are discussed in terms offaculty motivators and inhibitors. The online environment developed by the project for coursematerials collection will also be discussed along with an examination of the strengths andweaknesses of the approach taken. In addition, the project employed various mechanisms toencourage faculty participation, including hosting several summer workshops for faculty. Theeffectiveness of these mechanisms will be examined. The paper also includes suggestions andideas for future efforts to share curricular materials.Project SummarySWENET, the Network Community for Software Engineering Education, was an NSF fundedproject to produce and organize high-quality materials supporting software engineeringeducation. The project sought to
.Traditionally, even in the computing fields, the most common mechanism for feedback is thehandwritten comment 6. On preliminary programming assignments, hard copies code will bemarked up with comments about the mistakes that were made or electronic copies will beannotated with special grading comments. Design submissions again will be marked up withhandwritten comments, scribbles about the design problems or the potential issues in thedesigned system. Requirements documents are marked up in the same manner. If a programfails during program execution, the student is provided with a cursory note indicating the failureor maybe a static screen shot is returned. These techniques apply regardless of the medium, be itpaper, marked up pdf documents, or typed
, and IS Architecture. She has published articles in conference proceedings and journals in the areas of concept mapping, cognitive style, and engineering education.Dr. Kailasam Satyamurthy, Penn State University Dr. Kailasam Satyamurthy is an Assistant Professor in Engineering at Penn State University. He earned his Ph.D. in Engineering Mechanics from Clemson University and an MBA from Penn State. Before joining Penn State, he was a senior manager at Vanguard for 8 years and head of the engineering de- partment at GenCorp for 20 years. He teaches Decision and Risk Analysis, Business Statistics, Finance and Economics for Engineers, Quantitative Methods in Finance and Quality and Continuous Improve- ment courses at
be required for licensure. In time, one could postulate that a combined five-year curriculum would provide the opportunity for all graduates of software engineering master’sprograms to have a thorough grounding in the engineering sciences (thermodynamics,mechanics, electronic circuit theory, etc.) – a change from the current situation. Such graduatesmight well be better prepared to address systems engineering problems or software applicationsthat need to communicate intimately with physical portions of systems. In any case, thesescenarios are speculative and long-term and will be unlikely to affect decisions regardingcontinuing professional development programs in the near term.A movement in graduate science education (physics, mathematics
disciplines. In a survey of instructors at eightengineering schools Felder6 found that 24% always assigned a group project while another 52%assigned them in some courses, while a second broader survey showed that 80% of capstonecourses included team-oriented projects10.Given the prevalence of team projects we have conducted a number of experiments over the lastthree years to investigate the effectiveness of engineering teams, and mechanisms to improvethat effectiveness2,3,5. Through these experiments we have established a simple model for studentcollaboration that aids more rapid convergence on the problem at hand and the chosen solution.We have further demonstrated that the efficacy is borne from greater team mindshare – morecorrectly termed shared
on the Academic Committee of the Georgia Game Developers Association and is currently the College Fair Coordinator for the Southeastern Interactive Entertainment and Games Expo. He also participates on the Entertainment Engineering Subcommittee of the American Society of Mechanical Engineers. Dr. Preston’s industry ex- perience includes system development for a mobile platform and media company. He has participated in games-for-learning and community building grants to enhance STEM education and was recently awarded an NSF grant entitled ”Using a Virtual Gaming Environment in Strength of Materials: Increasing Access and Improving Learning Effectiveness” that develops 3D simulations/games to improve learning among
. We also share a few surprisesfound in the data.Our main contributions are the analysis of the rich body of collected data, as well as distillinggroups of questions that have yielded particularly useful results, and categorizing those by targetoutcome: questions for evolving the course, for “reading” students’ moods, and for gettingstudents to reflect on their experiences. Many of these questions may be broadly applicable.The remainder of the paper is structured as follows. Section 2 elaborates on relevant aspects ofthe course structure and describes our mechanism for collecting feedback data. Section 3discusses what we have learned from our data analysis – first about the course, and then aboutthe process of doing student surveys. We
coverage of what to do and how to do it is essential for the studentsto fully understand the fundamentals and carry them onto their projects.Workshops are considered as a more effective tool in conveying scenario-specific materials tothe participants. When used after a lecture that introduces a new topic (such as requirementelicitation), a workshop can zoom in on a scenario in the sample application and set theparticipants into the context of a related project activity (such as analyzing a problem statement).Depending on the background of the participants, the class can either continue to elaborate thetopic of concern, or introduce related activities and tools used (such as drawing use casediagrams using a modeling toolkit), and guide the
a staged approach from software engineering is applicableto software testing, and shows that incremental development is not well supported on severalcurriculums. Martinez et al.11 present their experience with two reflection mechanisms: alearning journal used in a Software Testing course, and a two-part reflection questionnaireused in a Software Quality Assurance course. Smith et al.19 explain how they used peer re-views to teach software testing within a Data Structures course, by encouraging collabora-tion and competition among students.The rest of the paper is organized as follows. Section 2 describes the context of the courses.Section 3 presents the labware used in the course. Section 4 mentions the implementationand assessment
software engineering class.Threats to Validity. The main threat to validity is the lack of completeness of the results shownin Table 2. Clearly not all teams were knowledgeable on how to use all the features of the codecoverage testing tools. This is evident when we compare the results obtained by Team 2 and theother teams. Team 2 was the only team able to consistently obtain statement and branch coverageusing all coverage tools when performing unit and subsystem testing. Note however there wasa problem for all teams obtaining code coverage results when performing system testing usingRational Functional Tester (RTF).16 Students were not able to instrument the code then used thecapture play back mechanism in RTF when running test cases.During the
System for an SE-1 CourseAbstractStudents and instructors struggle to provide an integrated view of learning content that is spreadover personal and shared file systems, course management systems, team project repositories,wikis, blogs, and other content storage and retrieval systems. Further, they struggle to organizethis content when each system provides a different organizational mechanism and strategy.Course management systems fragment content by semester, course, and class session. Filesystems fragment content into hierarchically organized folders and files with only folder and filenames to describe the content. Project repositories fragment information into versions, artifacttypes, and subsystems organized as folders. It is especially a
grading since it is verytime-consuming to read over every journal entry (some of them were rather large) and pro-vide individual feedback to students. Hence, we believe that this reflection mechanism doesnot scale up well for large classes (unless you want to leave the grading to the Teaching As-sistants).4.2. Findings from the Software Quality Assurance Course4.2.1. Students’ feedbackSome of the answers from the official survey were quite surprising for us as instructors. Forexample, Figure 4 shows students’ answers to the question “Do you duly read the requiredmaterial?” Less than a third of the students actually read the material consistently in ad-vance.On the other hand, Figure 5 shows the way students see their own preparation for the
105 or 103CAL 103 or 105 Science Elective TERM III TERM IVMA221 – Differential Equations MA134 – Discrete MathPEP112 – Electricity and Magnetism E232 – Engineering Design IVE126 – Mechanics of Solids E234 – ThermodynamicsE245 – Circuits and Systems SSW215 – Individual Software EngineeringE231 – Engineering Design III Science ElectiveHumanities Humanities TERM V TERM VICE342 – Transport/Fluid Dynamics SSW 345: Model-based Software EngineeringE344 – Materials
computingstudents. Many students are disappointed to find that they will not learn how to build computergames in their required computing courses. The author created a two-semester sequence ofcourses focusing on the application of software engineering principles to the design andimplementation of computer games. These courses build on the material covered in the firstcourse on software engineering taken by junior level students. This paper summarizes the contentof these courses and the author’s experiences in teaching game design during the past six years.IntroductionThe annual revenue generated from the sales of computer games in the United States aloneexceeds $7 billion dollars. Statistics indicate that the revenue generated by the computer gameindustry
been a hindrance. Some past intellectualproperty concerns have also cast a shadow, but recent architectural changes have made it easierto separate out proprietary materials so that more general use and adoption is practical. Perhapssignificantly, the Process Dashboard seems to be an ideal candidate for adoption andenhancement by software engineering educators and students.The architecture of the Process Dashboard is very different from that of the LEIA tool describedabove. It is a Java application, with basic parts of the user interface implemented in Java.However, it is also a web server, and many forms and reports are rendered in a local browser. Itsnetworking capabilities also support links between individual and team data repositories.The
semester. Forexample, B.5.a was not performed in the fall because it is measured in a spring-only course. Theresulting spreadsheet both summarizes all measured results and provides a mechanism to trackback to the source data.In the case of direct measures, the rubrics are recorded to provide a context for the measurementsand continuity between semesters and instructors. For example, F.4.c. Instructor shall review each student’s performance during technical walkthroughs and reviews (SE 4330 and/or SE 4730). For each role of Recorder, Reader, Moderator, and Reviewer, rate each student’s performance using the scale: 1 = poor, 2 = lacking, 3 = okay, 4 = very good, 5 = excellentThe spreadsheet has automatic
Michigan. His research interests lie in modeling and solving large-scale optimization problems focused on the transportation and logistics industries. He holds a Masters and Bachelors degree in Com- puter Science from the Uni-versity of Michigan.Apoorva Bansal, University of Michigan B.S.E. Mechanical Engineering 2011 B.S.E. Computer Engineering 2011Parth Shah, University of Michigan Page 22.1490.1 c American Society for Engineering Education, 2011 The Programming Performance Prophecies: Predicting Student Achievement in a First-Year Introductory Programming CourseAbstractEnsuring
curriculum would be the equivalent of ten 3-credit semester courses plus a required capstone experience (e.g. project, thesis) • The core material that every student would be expected to learn would be limited to no more than could be taught in the equivalent of four or five 3-credit semester courses.Guiding Principles, Assumptions, and ContextThis section articulates the foundational guidance for developing the GSwERC materials: theguiding principles, assumptions, and context for the entire GSwERC effort. Version 0.25 has 17guidance statements plus elaboration. The statements without elaboration are: 1. The principle purpose of GSwERC will be to provide a framework for development and improvement of curricula that provide
Page 11.1261.2typical student in our ABET-accredited software engineering program must integrate knowledgeand experiences from over 30 courses, 15 team projects, and two or more terms of cooperativework or internship jobs. Students cannot search for and integrate information across thenumerous storage and communications silos they currently use for these numerouscollaborations. They do not have the mechanisms to catalog, organize, and manage theinformation, annotate the information with comments and questions, link to external information,or readily share their own information with teammates, instructors, and other collaborators.Finding the information they need, when they need it, is quite difficult. Students and instructorsneed ways to
, attackingSecurity and testing computer networks. 2. Design a threat scenario and implement defenses to mitigate potential attacks. 3. Perform a penetration test of a live network and assess the results. 4. Discuss the legal and ethical issues involved with assessing and testing a network for vulnerabilities and weaknesses. 5. Discuss the roles and responsibilities of network security professionals.A key component of the lecture material for this course is demonstrations of network securitytools and in-class activities to promote active learning. The first time this course was offeredthere was considerable student feedback that supported an additional focus
, but merging therequirements and architecture courses was a challenging process since some material from thetwo courses needed to be deleted. However, merging the two courses was a valuable process inthat it brought the two strongly-related topics of requirements and architecture together.Practitioners in industry do not treat requirements and architecture as isolated practices. Mergingthe two courses helps students learn ways of separating, yet bridging, the gap between problem-space thinking (requirements) and solution-space thinking (design).This paper discusses the practical motivations to merge these two courses, the valuable andchallenging decisions in merging them, and lessons learned after teaching the merged course. Insearching the
validation) and enter- prise resource planning. He also has interest in learning objectives-based education material design and development. Acharya is a co-author of ”Discrete Mathematics Applications for Information Systems Professionals,” 2nd Ed., Prentice Hall. He is a life member of Nepal Engineering Association and is also a member of ASEE and ACM. Acharya is a recipient of the ”Mahendra Vidya Bhusak” a prestigious medal awarded by the Government of Nepal for academic excellence. He is a member of the Program Committee of WMSCI, MEI, CCCT, EEET, ISAS, AG, KGMC, and IMCIC and is also a member of the Editorial Advisory Board of the Journal of Systemics, Cybernetics, and Informatics of the International Institute
a three term coursesequence encompassing team based construction of a real-world enterprise scale system. Theprojects are based on problems derived from on campus research projects or industry partners.Course Modification MotivationOver the past eight years, student motivation and satisfaction with the three term, project based,software engineering course has steadily declined. Low student motivation was making it moredifficult to achieve key learning goals. According to recent assessments by the Junior Projectsequence instructor, the course material was no longer effective to the extent it had been whenfirst introduced. Student behavior changed, and the experience level of those students enteringtheir junior year also changed. These
static and dynamicelements of the system. Their use depends on understanding the full range of diagram types andso are not practical for introductory students.UMLGrader DetailsUMLGrader is based on UMLint,17, 12, 11 a tool which provides feedback on UML diagramsstudents create for open-ended problems. UMLint flags a number of common problems in usecase and class diagrams including failing to follow naming conventions, reversed generalizations,improper attributes and operations, and errors in associations.12 The goal of UMLint is to notidentify every possible error, but to catch common errors that can be detected mechanically and soencourage students to look more closely at their solutions. UMLGrader, on the other hand, isdesigned to critique
doesn’t delve deeply into the mathematical details ofcryptology. In order to teach students how to develop secure software, the course focused on the followinggoals: 1. Students should be aware of common types of security vulnerabilities. 2. Students should understand how to document security requirements and design. 3. Students should be able to apply secure design principles to the creation of secure software. 4. Students should know how to verify that the security mechanisms implemented in their sys- tem enforce the system’s security requirements. Due to the time limitations of a single semester software engineering course, these goals mustbe achieved primarily through adapting existing features of the software engineering
is, in the case of motor control algorithmdesigners they require an understanding of dynamics and electro-mechanical systems. This isconsistent with the definition cited by Fairley [2] of a system being a “complex arrangements ofdiverse hardware, software, and people elements that include computing hardware andsoftware.” What regional employers were telling us was that they need engineers who canunderstand the full system including both electrical subsystems and software subsystems.One company, Flight Safety (based in Tulsa, Oklahoma) addressed this question in a way thatfound consensus among the industry representatives present. Flight Safety stated that theyimplemented software systems which emulate complex electrical and computer systems
used to assess how complex a given implementation is going to beto adequately test.To conclude the course, other assorted topics are presented. This includes the topic ofexploratory testing. Through an active learning exercise, students learn approaches toperforming unscripted exploratory testing on a simple calculator application. This then leads to Page 25.500.5the concept of mutation testing, which is introduced as a mechanism to quantify the quality ofautomated test suites. Lastly, students are provided with lecture material on the relationshipbetween design, implementation and testability. This leads students to have an understanding
onesignificant application domain. In addition, Begel and Simon4 identified that professional issuessuch as communication and collaboration skills are key to the success of new graduates. Onemain mechanism for providing students with professional experience and skills in developingcomplex software systems is involvement in a real-world project within the classroomenvironment or internship.There are several different models for student involvement in software projects. One less-commonly used model is students developing projects within a classroom where the project isdefined by the instructor, the students, or with some combination of instructor and studentinput5,6,7. This approach has the benefits of the project being entirely under the control of
interaction that a learner exhibitswith the material being learned, the instructor, and their fellow learners—particularly incomparison to a lecture-driven mode of instruction—and the active learning literature identifiesgames as important vehicles for fostering this type of learning. The roots of active learning canbe found in the learn-by-doing approach5, which identifies the interactions that learners engagein as a critical part of the learning process. Our use of a role-playing game, providing a contextfor and relying on interactions between fellow learners, strongly embodies these ideas.Similarly constructivist ideas about learning have given rise to a number of related pedagogicalphilosophies and associated techniques: Situated learning10, for
rapid technological change, onecan argue that a strong organizational foundation is key to assimilating and evolving with thediscipline. To this end we have incorporated concept maps as an assessment tool in our upper- Page 25.213.9division project-based Software Enterprise curriculum. Concept maps reify students’ organizingprinciples of the material learned in context. At present we employ this method to evaluate thestudent only as a resulting artifact of the pedagogy; future work may include creating formativeand perhaps self- assessment processes to assist students in organizing knowledge better.Concept maps may also one day form a basis for