systems and mechatronics; modeling, simulation, vi- sualization, and analysis; intelligent systems/artificial intelligence (knowledge representation, reasoning, machine learning); and CS/engineering education. c American Society for Engineering Education, 2016 Experiencing Real-World Multidisciplinary Software Systems Engineering Through Aircraft Carrier Simulation1 IntroductionModern technology is a complex combination of mechanical systems controlled by electricalsystems ultimately controlled by software systems. Mechanical and electrical engineeringstudents generally receive multidisciplinary hands-on exposure to such real-world applications,but those in computer science rarely see
Paper ID #11526Teaching software-engineering concepts through industrially used tools earlyin the undergraduate curriculumDr. Temesghen Kahsai , Carnegie Mellon University Dr. Temesghen Kahsai is a research scientist at Carnegie Mellon University Silicon Valley. His research expertise is in the intersection of formal methods and software engineering, with an emphasis on auto- mated reasoning about software systems. He has extensive experience in the development of formal foun- dations and tools for the analysis of complex critical systems. He is currently leading three projects on contract-based verification of flight
in the School of Systems Engineering at Stevens Institute of Technology. Her research area is based on systems thinking in K-12 education. She graduated from Stevens Institute of Technology with a Masters degree in Computer Engineering, and then she worked with Lucent Technologies as a software developer first in embedded systems and then she held a position as a software designer/architect for CDMA2000 project where she participated in numerous projects developing several features to enhance the existing software system. She is now participating in a project to create a model curriculum in software engineering.Lawrence Bernstein, Stevens Institute of Technology
Capability,” Computer Science Technical Report TR-2002-05, University of Alabama, September, 2002.17. Swapna Gupta, J. Scott Hawker, and Randy K. Smith, “Acquiring and Delivering Lessons Learned for NASA Scientists and Engineers: A Dynamic Approach,” Proceedings of the 2005 ACM Southeast Conference, Kennesaw, GA, March, 2005.18. Christina (H.Y.) Yau, and J. Scott Hawker, “SA_MetaMatch: Document Discovery through Document Metadata and Indexing,” Proceedings of the 2004 ACM Southeast Conference, Huntsville, AL, March, 2004.19. Gregory Hislop, et al., “Work in Progress – Developing the Community of Software Engineering Educators,” 35th Proceedings of the ASEE/IEEE Frontiers in Education Conference, October 29-22, 2005
Page 11.792.9would like to apply more security tools to the development process. Code reviews could be en-hanced through the assistance of better static analysis tools with more instructor assistance. Thereare also a wide variety of web application security scanners, which offer features beyond the proxyand custom perl tools used in previous versions of the course. To address the issue of time constraints, we are creating a graduate class in secure softwareengineering. This class has both software engineering and information security prerequisites, al-lowing us to build upon a foundation of both security and software development skills. Graduatestudents also typically have a stronger mathematical background than undergraduates, opening
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
CPS softwareengineer program. Figure 5 highlights areas that could be strengthened and we expect to addadditional technical material to the CPS program.VII. Additional Work on CPS Software Engineering CurriculumThe consideration of the SWE B.E. program as a CPS SWE program goes beyond the originalintent of the new B.E. program. Although our initial analysis and initial feedback is positive,we are continuing to seek feedback from the community and will continue to assess the results asour students progress through the program. If sufficient community interest is found we willpropose a follow-up workshop on this topic.VIII. SummaryStevens’ roots are grounded in a multi-disciplinary approach to engineering education, beginningwith founding of
choices they have made throughout development. Each term the course is offered,the class of students will bring a different set of experiences to the design process, resulting in anew final product. Visualizations for algorithms and graph theory topics have been shown to be an effective ped-agogical device. For example, the Algorithms in Action project12 uses animations to explain datastructures, sorting algorithms, and some graph algorithms. The Math Cove8 system is a graph the-ory course taught primarily through visual examples and animations. Other visualization systemsare designed to support advanced graph theory topics like Tutte polynomials,13 or feature advancedassessment tools to measure student learning such as the JAVENGA1 and
scientific andmathematical principles through experimentation with robots,5 when they talk about increasingachievement scores in informal learning. More recently Berland et al. trace the LegoMindstorms robotic kit back to his original vision of educational robotics.6 Several other researchers have reported on using robotics in STEM education,7-8 but nearlyall their narrative is related to using LEGO robots exclusively in K-12 education, perhaps, with a Page 24.333.3 few exceptions, such as Mataric et al,9 who refer to the possibility of using robotics in STEMcourses at the college level. However, there are no substantial reports on using
frameworkin Scrum; and tool support through Wikis and RTC/Jazz has helped the faculty monitor projectson a near-daily basis while at the same time reducing the overall time commitment of the facultyand improving the quality of the status data provided by teams. The main lesson we learned isthat having a process which emphasizes daily interaction helps ensure consistent projectprogress, instead of teams working round-the-clock the day before an iteration deadline. Themain purpose of this paper is to report on the success of tool support for continuously monitoringprojects. The next section describes the machinery for utilizing RTC/Jazz in Software Enterpriseprojects, and is followed by a discussion of its impacts on project and learning success.3
into a Software Engineering courseand provide first hand evidence of the effectiveness of these learning activities through a fol-lowup study. Furthermore, the educational implications drawn from our study have the poten-tial to be related to a wide spectrum of courses in Software Engineering. In what follows, wedescribe in Section 2 why studying human factors is important for traceability research andwhy sufficient training in ART is important for new graduates. Section 3 presents our researchquestions and setup of the initial study. Section 4 discusses the results. Section 5 details theeducational implications of our findings in light of pedagogical principles and learning ac-tivities. Section 6 describes the implemented learning activities
plugin in the Eclipse IDE.[14] As our students were well experienced with both Java and Eclipse, the development of anAndroid app as a course project was a popular choice. We still needed a short period of“Android boot camp” to get teams up to the point where they were proficient enough to jump offto developing their own apps, but teams got through this period quickly.The next challenge after selecting a course project is, “Who gets to be the customer?” Unless thecourse is fortunate enough to have an external customer, the instructor typically assumes thisresponsibility. In Scrum, this role is played by the Product Owner. The Product Owner is thesource of user stories and is responsible for defining the priority of implementation andacceptance
of social constructivist approachessuch as classroom discussion and experiential learning13,18. Through peer interaction andcollaboration students are able to synthesize and evaluate their ideas collectively10,16,19 and areforced to reflect upon and reason about their ideas at greater depth than when workingindividually17.In contrast, there are numerous studies that show the difficulty students experience working inteams. Student’s frequently cite that they have little influence over their team-mates; they believetheir grade will not reflect their contribution or competence; and the transaction cost ofscheduling meetings, and working collaboratively are not worth the rewards, of which they seefew9. These bad team experiences can have a
. This is particularly relevant when students are working adults and rely onemployer tuition reimbursement to fund their education, as employers often pro-rate the amount ofreimbursement based on the student’s course grade.Despite the large body of work in this area, most of the studies were conducted with undergraduatestudents. This study investigates use of PA and SA as an assessment tool for a graduate-level softwareengineering course.III. Course DescriptionThe course used in this study is a graduate level software engineering course in software constructiontaught at a large public research university in the Mid-Atlantic. The course is intended to help studentslearn and apply software engineering principles through developing a large-scale
architectural styles is that they go beyond simple narratives of designexperiences, and capture design expertise that has been refined through careful reflection in aneffort to codify important lessons. By providing students with a solid foundation inunderstanding the applicability, key characteristics, advantages, and disadvantages ofarchitectural styles, educators can provide learners with valuable starting points for their owndesign activities as well as build expertise in identifying critical design trade-offs.The instruction of architectural styles, however, remains challenging, primarily due to afundamental disconnect between the dynamic nature of the software compositions thatarchitectural styles model and the static artifacts most commonly used
LeBlanc, J., “Improving software practice through education: Challenges and future trends”, 2007.6. Callele, D., and Makaroff, D., “Teaching requirements engineering to an unsuspecting audience”, ACM SIGCSE Bulletin, 38(1), 2006, pp. 433-437.7. Zowghi, D., and Paryani, S., “Teaching requirement engineering through role playing: Lessons learnt,” International Conference Requirements Engineering, 2003, pp. 233–245.8. Al-Ani, B., and Yusop, N., “Role-playing, group work and other ambitious teaching methods in a large requirement engineering course,” IEEE International Conference Workshop Eng. Computer- Based Systems, 2004, pp. 299–306.9. Mohan, S., and Chenoweth, S., “Teaching requirements engineering to undergraduate students
FederalEducational Rights Privacy Act (FERPA)3 which prohibits, among other things, Page 11.1384.3university employees from discussing with or providing student information to anyoneoutside the university unless the student has signed a release to allow that distribution.Many of us are also familiar with the many release forms that we are required to sign torelease our medical information beyond the health care provider’s organization. There isno specific federal law that prohibits distribution of employee information like there isfor student and patient information. However, most large employers have learned fromexperience via lawsuits and other forms of
systems, data structures, algorithms, and programming languages. This should not besurprising. These topics have been considered core topics in computing for some time. While isit possible for a computer science student to gain significant knowledge of software engineeringtopics through judicious choice of technical electives, an analysis of curricular structure lendssupport to the conclusion that software engineering is not developing as a sub-discipline ofcomputer science but rather is emerging as a distinct discipline.This pattern of curricular development appears consistent with the growth of a new disciplinehaving roots in computer science. It is also consistent with the development of a curricularstructure that is preparing students for