COSC 665: Software Engineering II
Spring Semester 2020 Course Information
Instructor: Dr. Sharad
Sharma E-MAIL: ssharma@bowiestate.edu CLASS
HOURS:Thursday:
4:55 PM to 7:25 PM, CSB 312 |
LATEST NEWS
Mastering Software EngineeringIEEE Computer Society volunteer Natalia Juristo is developing a master’s program in software engineering.
Read more
Salaries for CS and Engineering Grads to Rise
Both computer applications software engineers and computer systems software engineers are projected to be among the fastest growing occupations from 2008 to 2018
Required
Bernd Bruegge, Allen H. Dutoit (2009), Object-Oriented Software Engineering: Using UML, Patterns and Java, 3rd Edition, Publisher: Prentice Hall, Upper Saddle River, NJ. ISBN-10: 0136061257, ISBN-13: 978-0136061250
COURSE DESCRIPTION
The course will cover software life-cycle models and different phases of the software development process. Object-oriented techniques are applicable. Students will have a group project on developing complex software systems.
Prerequisite: COSC 475 or COSC 565
Course Related Links
* Syllabus
* Project
Weekly Time Schedule
30-Jan |
Software Engineering Review |
||
7-Feb |
Introduction to Software Engineering | Chapter 1 | |
13-Feb |
Modeling with UML |
Chapter 2 | |
20-Feb |
Project Organization and Communication |
Chapter 3 | Project Proposal due |
27-Feb |
Requirements Elicitation |
Chapter 4 | Literature review due |
5-Mar |
Analysis |
Chapter 5 | |
12-Mar |
Project Presentation & demo
|
Project due | |
19-Mar |
Spring Break |
||
26-Mar |
System Design: Decomposing the System |
Chapter 6 | |
2-Apr |
System Design: Addressing Design Goals |
Chapter 7 | Research Paper due |
9-Apr |
Object Design: Reusing Pattern Solutions |
Chapter 8 | |
16-Apr |
Object Design: Specifying Interfaces |
Chapter 9 | Final Research Paper due |
23-Apr |
Presentations |
||
30-Apr |
Configuration Management |
Chapter 12 | |
7-May |
Presentations |
||
14-May | Final
Exam
|
||
|
|
|
Paper Presentation Schedule
Date | Topic | Paper Presentation Schedule |
1/31/2019 | Introduction to Software Engineering | Dr. Sharma |
2/7/2019 | Software Engineering | S. Yoon, Jianjiang Feng, A.Jain,, Altered Fingerprints: Analysis and Detection, IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 34, NO. 3, MARCH 2012 (Swetha) Physical Collaboration of Human-Human and Human-Robot Teams, IEEE TRANSACTIONS ON HAPTICS, VOL. 1, NO. 2, JULY-DECEMBER 2008 (Manik) |
2/14/2019 | Software engineering education | Investigating Country Differences in Mobile App User Behavior and Challenges for Software Engineering,IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 41, NO. 1, JANUARY 2015 (Antonio) A. T.Misirli, and A. B. Bener, Bayesian Networks For Evidence-Based Decision-Making in Software Engineering, IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 40, NO. 6, JUNE 2014. (Abdullah) Human Mobility Modeling for Robot-Assisted Evacuation in Complex Indoor Environments, IEEE TRANSACTIONS ON HUMAN-MACHINE SYSTEMS, VOL. 46, NO. 5, OCTOBER 2016 (Sri-Teja) |
2/21/2019 | Usability & Educational Games | Ashutosh Trivedi and Shrisha Rao, Agent-Based Modeling of Emergency Evacuations Considering Human Panic Behavior, IEEE TRANSACTIONS ON COMPUTATIONAL SOCIAL SYSTEMS, VOL. 5, NO. 1, MARCH 2018 (Swetha2) Robot Guided Crowd Evacuation, IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, VOL. 12, NO. 2, APRIL 2015 (Manik2) |
2/28/2019 | Software Safety & Security | Luca Chittaro, Roberto Ranon, and Lucio Ieronutti, VU-Flow: A Visualization Tool for Analyzing Navigation in Virtual Environments, IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 12, NO. 6, NOVEMBER/DECEMBER 2006. (SriTeja2) Run Watchers: Automatic Simulation-Based Decision Support in Flood Management, IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 20, NO. 12, DECEMBER 2014 (Abdullah2) |
3/7/2019 | Agent Based Modeling |
|
3/28/2019 | Multi-Agent Systems | Matthew Manley, Yong Seog Kim, Keith Christensen, and Anthony Chen, Airport Emergency Evacuation Planning:An Agent-Based Simulation Study of Dirty Bomb Scenarios, IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS, VOL. 46, NO. 10, OCTOBER 2016 (Swetha3) |
4/4/2019 | Deep Learning | Distributed Geospatial Data Processing Functionality to Support Collaborative and Rapid Emergency Response, IEEE JOURNAL OF SELECTED TOPICS IN APPLIED EARTH OBSERVATIONS AND REMOTE SENSING, VOL. 2, NO. 1, MARCH 2009 (Antonio2) MRTouch: Adding Touch Input to Head-Mounted Mixed Reality, IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 24, NO. 4, APRIL 2018 (Sri Teja3) |
4/11/2019 | Software Architecture | Security Protocols Against Cyber Attacks in the Distribution Automation System, IEEE TRANSACTIONS ON POWER DELIVERY, VOL. 25, NO. 1, JANUARY 2010 (Antonio 3) |
4/18/2019 | Software Testing | Drone-Augmented Human Vision: Exocentric Control for Drones Exploring Hidden Areas, IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 24, NO. 4, APRIL 2018 (Manik3) |
4/25/2019 | Formal Methods | On the Quality of Service of Cloud Gaming Systems, IEEE TRANSACTIONS ON MULTIMEDIA, VOL. 16, NO. 2, FEBRUARY 2014 (Abdullah3) |
Research paper: Each student is expected to do a research paper on a topic as below
TOPICS are assigned after the first week of the class.
Topics:
STUDENT EXPECTED OUTCOMES:
Upon completion of this course, the student will be able to:
EVALUATION: Following is the Evaluation system for the Final Grade. Each assignment will be graded. Students are responsible for completing them as scheduled.
Final Project, Mid-term paper, and Final exams are mandatory.
Assignments:
The assignments include research paper critiques
Paper review assignments:
For each paper, students should write a review answering each of the following questions:
1. What problems (with prior work or the lack thereof) were addressed or surveyed by the authors?
2. What solutions were proposed or surveyed by the authors?
3. What are the technical strengths and main contributions of the paper's proposed solutions?
4. What are the technical weaknesses of the paper's proposed solutions?
Paper Presentation:
On the day of your paper review, you should bring your review presentation, i.e., power point file (flash drive), to the class. In total 15 ~20 minutes each, including:
- Brief description of (1) introduction/idea; (2) method (experimental design, participants, apparatus, experiment procedure, data collection); (3) results; (4) discussion and/or conclusion; and (5) etc.
- What knowledge did you learn from the paper/work, e.g., anything you’ve never known before; which part of the work interests you most…
Research papers will be assigned to students to read, analyze and present to the class. Presentations will be structured as follows:
Research/ Application paper: Each student is expected to do a research paper on a topic. Topics can be drawn from the following areas:
Research paper will be graded through following rubric
Final Project:The purpose of the course project is to provide the students with the knowledge of software engineering methodology and the skills to apply it. The particular project is not the goal in itself; rather, it serves as a vehicle to apply your knowledge and to develop the skills. Projects also introduce students to team work, which is a must for large-scale software development. It also emerges as a key methodology for any- and every-scale software development, something called extreme programming. Team work is required since team work is an integral part of large-scale software development.
GRADING: Academic dishonesty will result in grade F. The following grade scale will be used:
90 % - 100% = A
80 % - 89% = B
70 % - 79% = C
60 % - 69% = D
0 - 59% = F
Final grades will be computed based upon credits earned for all the five components mentioned above.
References:
Bernd Bruegge and Allen H. Dutoit (2004) Object-Oriented Software Engineering: Using UML, Patterns and Java, Second Edition, Prentice Hall, Upper Saddle River, NJ.
USEFUL LINKS
Graphics
Virtual Functions
Virtual Functions
Polymorphism
Introduction to Polymorphism in C++
Introduction to Eclipse Video