150 likes | 164 Views
This paper discusses experiences and challenges faced in student software projects across different curricula, including computer architecture and organization, biomedical signals and systems. It explores project milestones, the project plan, progress reports, and project implementation. The opportunities and experiences gained from these projects are also highlighted.
E N D
Addressing software engineering issues in student software projects across different curricula Dušanka Bošković Computing and Informatics Bachelor Programme Faculty of Electrical Engineering Sarajevo, 2007/08
Background • Experiences with student projects within the Master study courses at the Department Automatics and Electronics : • Computer Architecture and Organization • Biomedical Signals and Systems • Students software projects with objective to: • Gain knowledge by implementing a model of the system – simple CPU • Solve simplified real world problem. • Communicate their knowledge on the subject by effectively implementing software model 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Assignment 1 • Computer Architecture and Organization • Developing Relatively Simple CPU Simulator (John D. Carpinelli) • 27 students, Department Automatics and Electronics (AE),1st semester master studies • 9 teams of 2-4 students • Duration: 6-8 weeks 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Assignment 2 • Biomedical Signals and Systems • ECG system • 27 students AE department + 9 students CS + 2 students PE • 8 teams of 2-5 students • Duration: 6-8 weeks • Each team provided with the general scalable ECG system architecture, but focused on the specific application or part of the system: • ECG monitor, ECG signal generator, HRV monitor • ECG training station • ECG Signals from the PhysioNet – the MIT BIH ECG signals database 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
ProjectMilestones • Project Plan • Regular Progress Reports and Interim -Prototype Project Implementation • Project Report and Project Implementation Presentation 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Project Plan • Requirements!! • Functional specification with main architecture and design decisions • Tasks to complete • Schedule 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Progress Reports and Prototype Project Implementation • Progress Reports • Mail, unformatted form, and consultations • Prototype • A substantial implementation effort • Well-tested and stable for demonstration • Have an attractive user interface 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Project Report and Project Implementation Presentation • The Project Report captures the outcome • Illustrated with screen shots • Presentation • Assignment 1 (Processor Simulator) – part of the oral exam • Assignment 2 (ECG System)– consultations prior to exam 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Project Grading • Assignment 1 (Processor Simulator) – 2 points Project Plan + 2 points Presentation (out of 10 points for homework) • Assignment 2 (ECG System)– consultations prior to exam 2 points Project Plan + 6 points Presentation (out of 10 points for homework) 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Challenges • Topics covered are new for the students • Students (Dept. Automatics and Electronics) not experienced in SE or other similar course • Emphasizing soft skills – team work, communication, presentation, independent research • Assignment 2 independent student work, consultations only • Additionally: • Emphasizing ‘elementary’ SE skills 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Opportunities • Topics relevant to ‘real programming’ • Students experience with programming courses in the freshmen year (C++, .Net) • High percentage of students choosing elective courses at the CS Department • Assignment 1 – lab sessions (contact hours) foreseen for the regular progress reports and consultations 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Experiences • Shift of focus to the problem solution not implementation process, butimplementation process proved to be the key for success • Requirements negotiation and solution trade offs • Assembler directives vs. editable memory • ECG screen – continues display vs. static with scrolling • Benefits of efforts invested in functional specification 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Experiences • Students involvement and initiative • ECG signal generation using • Threads, • Visual controls, • ECG recording device – only circuit schematics • Participation in team work affected knowledge obtained – proved with the written and oral exam results 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Conclusion • Addressing SE issues in student software project assignments (not in SE courses) is feasible and should be imperative? • Additional effort + time for teaching staff • Students experience the importance of the development process • Requirements gathering (negotiating!!) • Solution trade offs (real engineering) • Planning, and etc. 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009
Conclusion • Motivating and addressing soft skills, • Having students with mixed educational background beneficial • Students like challenges and achieving results 9th Workshop “Software Engineering Education and Reverse Engineering” Neum, Bosnia and Herzegovina, 31 August – 5 September 2009