COSC 665: Software Engineering II
Spring Semester 2011 Course Information
Instructor: Dr. Sharad
Sharma
Department of Computer Science
Bowie State University
E-MAIL: ssharma@bowiestate.edu
CLASS
HOURS:Thursday:
4:55 PM to 7:25PM, CSB 312
OFFICE HOURS: Thursday: 3:25PM to 4:55 PM or by appointment
OFFICE LOCATION: Computer
Science Building Room 317
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
Graduates with computer-related or engineering degrees can expect to see slightly higher starting salary offers.
Required Text
Bernd Bruegge and Allen H. Dutoit (2004) Object-Oriented Software Engineering: Using UML, Patterns and Java, Second Edition, Prentice Hall, Upper Saddle River, NJ.
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
* Assignments
Paper Presentation Schedule
Date | Paper Presentation Schedule | |
2/10/2011 |
|
|
2/17/2011 | A Comparison of Six UML-Based Languages for Software Process Modeling, IEEE Transactions on Software Engineering, vol. 36, issue: 5, pp. 662-675, Sept.-Oct. 2010.(Murat) A Model-Driven Development Approach Focusing Human Interaction, Advances in Computer-Human Interactions, 2009. ACHI '09. Second International Conferences on In Advances in Computer-Human Interactions, ACHI '09. Second International Conferences on, Vol. 0 (7 February 2009), pp. 90-96, 2009 (Kola ) |
|
2/24/2011 | Variability and Reproducability in Software Engineering: A Study of Four Companies Developed the Same System, IEEE Transactions on Software Engineering, vol. 35, issue 3, pp. 407-429, May-June 2009. (Ji-Wu) Linking Model-Driven Development and Software Architecture: A Case Stud., IEEE Transactions on Software Engineering, vol. 35, issue 1, pp. 83-93, Jan.-Feb. 2009 (Kevinson) |
|
3/3/2011 | Kim, D.; Wang, X.; Kim, S.; Zeller, A.; Cheung, S.; Park, S., "Which Crashes Should I Fix First?: Predicting Top Crashes at an Early Stage to Prioritize Debugging Efforts", Software Engineering, IEEE Transactions on Model Driven Engineering for Designing Adaptive Multi-Agent Systems, Engineering Societies in the Agents World VIII,Volume 4995, ISBN: 978-3-540-87653-3, 2008 (Amarachi) |
|
3/10/2011 | FAML: A Generic Metamodel for MAS Development, IEEE Transactions on Software Engineering, vol. 35, issue 6, pp. 841-863, Nov.-Dec. 2009. (2. Nathaniel) Yuan, X; Cohen, M; Memon, A, "GUI Interaction Testing: Incorporating Event Context", Software Engineering, IEEE Transactions on |
|
3/31/2011 | Kim, M.; Kim, Y.; Kim, H., A Comparative Study of Software Model Checkers as Unit Testing Tools: An Industrial Case Study, Software Engineering, IEEE Transactions on, Volume: PP Issue:99, 2010 .(2. Murat) Multi-agent modeling and simulation of human behavior in aircraft evacuations, IEEE Transactions on Aerospace and Electronic Systems, Vol.44, No.4, October 2008. (2.Daryl) Software Architecture Reconstruction: A Process-Oriented Taxonomy, IEEE Transactions on Software Engineering, vol. 35, issue 4, pp. 573-591, July-Aug. 2009.(Heather) |
|
4/7/2011 | Salleh, N; Mendes, E; Grundy, J, Empirical Studies of Pair Programming for CS/SE Teaching in Higher Education: A Systematic Literature Review, Software Engineering, IEEE Transactions on, Volume: PP Issue:99, 07 June 2010. (2. Ji-Wu) Bodden, E.; Havelund, K., "Aspect-Oriented Race Detection in Java", Software Engineering, IEEE Transactions on |
|
4/14/2011 |
|
|
4/21/2011 | Egyed, A.,Johannes Kepler University, Linz, "Automatically Detecting and Tracking Inconsistencies in Software Design Models, IEEE Transactions on Software Engineering, Volume: PP Issue:99, page(s): 1 - 1, 18 March 2010 (3. Nathaniel) Wenhua Song, Lingyun ZHU, Qinggong Li, "Evacuation Model and Application for Emergency Events",2009 Fourth International Conference on Computer Sciences and Convergence Information Technology, (3.Daryl) Spiekermann, S.; Cranor, L.F.,"Engineering Privacy", Software Engineering, IEEE Transactions on, Issue Date: Jan.-Feb. 2009 (2. Amarachi) Effects of Personality on Pair Programming, (IEEE Transactions on Software Engineering, vol. 36, issue 1, pp. 61-80, Jan.-Feb. 2010) (2. Heather) Salleh, N; Mendes, E; Grundy, J, "Empirical Studies of Pair Programming for CS/SE Teaching in Higher Education: A Systematic Literature Review", IEEE Transactions on Software Engineering, Volume: PP Issue:99, page(s): 1 - 1, 07 June 2010 (3. Murat) |
|
4/28/2011 | Burgy, L.; Reveillere, L.; Lawall, J.; Muller, G., "Zebu: A Language-Based Approach for Network Protocol Message Processing", Salmeron, J.; Lopez, C.,"Forecasting Risk Impact on ERP Maintenance with Augmented Fuzzy Cognitive Maps", , IEEE Transactions on Software Engineering, Volume: PP Issue:99, age(s): 1 - 1, January 2011 (3. Heather) Tribastone, M.; Gilmore, S.; Hillston, J.,"Scalable Differential Analysis of Process Algebra Models", |
|
5/5/2011 | de Souza, C.; Redmiles, D., "The Awareness Network, To Whom Should I Display My Actions? And, Whose Actions Should I Monitor?",, IEEE Transactions on Software Engineering, Volume: PP Issue:99, page(s): 1 - 1, February 2011 (3. Ji-Wu) Mesbah, A.; van Deursen, A.; Roest, D., "Invariant-Based Automatic Testing of Modern Web Applications",, IEEE Transactions on Software Engineering, Volume: PP Issue:99, March 2011 (3. Kevinson) |
Weekly Time Schedule
25-Jan |
(No class) Snow Day |
|
3-Feb |
Introduction to Software Engineering | |
10-Feb |
Modeling with UML |
|
17-Feb |
Project Organization and Communication |
|
24-Feb |
Requirements Elicitation |
|
3-Mar |
Analysis |
|
10-Mar |
System Design: Decomposing the System |
Project Proposal due |
17-Mar |
Mid
Term Exam
|
|
25-Mar |
Spring Break |
|
31-Mar |
System Design: Addressing Design Goals |
|
7-Apr |
Object Design: Reusing Pattern Solutions |
|
14-Apr |
Object Design: Specifying Interfaces |
|
21-Apr |
Presentations |
|
28-Apr |
Mapping Models to Code , Testing |
|
5-May |
Rationale Management |
Group Project Presentations/ Demo |
12-May |
Final
Exam
|
|
|
|
|
Research paper: Each student is expected to do a research paper on a topic as below
1. Evacuation Decision making and Behavior responses for Emergencies (Daryl)
Review the literature in emergency evacuation, risk perception, behavior research, and responces/warnings
2. A Comparative Study of Multi-agent systems or agent based modeling for Emergency evacuations ( Kola)
3. A Comparative Study of Intelligent tutoring system (Heather)
4. Information fusion and decision making systems for surveillance (Murat)
survey the current research initiatives and provide comparison studies between different methodologies (similiarities and differences)
5. Use of Mobile devices for Indoor Emergency Evacuation Service ( Ji-Wu)
survey the current research initiatives and provide comparison studies between different methodologies (similiarities and differences)
6. Software Reuse and Reverse engineering (Nathaniel)
7. Software Testing Tools (Amarachi)
There are several software testing tools available to use during and after the software development. Your job is to survey the current, most widely used software testing tools and provide comparison studies between different tools (similiarities and differences)
8. Modeling adaptive software systems ( Kevinson)
survey the current research initiatives and provide comparison studies between different methodologies (similiarities and differences)
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 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?
5. What suggestions do you have to improve upon the paper's ideas?
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 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.
USEFUL LINKS
Graphics
Virtual Functions
Virtual Functions
Polymorphism
Introduction to Polymorphism in C++
Introduction to Eclipse Video