CS 492
Senior Design Project II
Description: Continuation of the capstone design project started in the CS 491 course, with the same team. Technical and innovative group project emphasizing engineering design principles on a specific topic in any field of computer science and engineering. Documentation on the low level design and the implementation of the project and an oral presentation, including a demo. Credit units: 3, Prerequisite: CS 491.
Low-Level Design Report:
The high-level design produced at the end of CS 491 course is refined
into the detailed low-level design document.
Extent and validity of the design principles that were used to carry
out this phase of the project must be explained in detail. Also,
creativity, that is the extent to which the team developed a novel
solution to the design problem while still achieving a functional
design, at the low-level design phase, must be clear.
In addition, engineering standards made use of during design need to be mentioned.
The report must be available on the web page of the project.
The following applies to object-oriented software-oriented projects for the most part; for other types of projects, the tasks are somewhat different, and the contents of the report must be decided in consultation with the project advisor.
During analysis, we describe the purpose of the system. This results in the identification of application objects that represent user concepts. In system design, we describe the system in terms of its architecture, such as its subsystem decomposition, its global control flow, and its persistency management. During system design, we also define the hardware/software platform on which we build the system. This results in the selection of off-the-shelf components that provide a higher level of abstraction than the hardware. Through object design, we close the gap between the application objects and the off-the-shelf components by identifying additional solution objects and refining existing objects.
A sample way to organize low-level or object design document would be as follows:
1. Introduction 1.1 Object design trade-offs 1.2 Interface documentation guidelines 1.3 Engineering standards (e.g., UML and IEEE) 1.4 Definitions, acronyms, and abbreviations 2. Packages 3. Class Interfaces 4. Glossary 5. ReferencesReference: Object-Oriented Software Engineering, Using UML, Patterns, and Java, 2nd Edition, by Bernd Bruegge and Allen H. Dutoit, Prentice-Hall, 2004, ISBN: 0-13-047110-0.
Final Report:
The final report is the culmination of the project.
The final architecture and design of your system as well as the final
status of the project is presented in this report.
Your final report should include also your refined analysis and requirements, and the details of your design. It should be a self-contained document that is giving complete information about your system or solution. It should include details about your implementation and tests, and your maintenance plan as well. All these should be the major part of your final report.
Additionally, you should write the following in your final report.
In a section (called Ethics and Professional Responsibilities), you should write and discuss the ethical and professional responsibilities that you recognized, observed and fulfilled during the project.
In a section (named Judgements and Impacts in Various Contexts), you will write which informed judgments you made during your project that consider the impact of your solution in global, economic, environmental, and societal contexts. In other words, you need to write how considering the impact of your solution in various contexts influenced your various decisions. It is not necessary for every engineering situation to require that each of these contexts be a major consideration. Considering of the impact as the judgment is made is key. For each judgement you should include a table summarizing the impacts in four contexts.
In a separate section (named Teamwork Details) you should write how the teamwork has been done during the project. You will explain, how each member a) contributed and functioned in the team; b) helped creating a collaborative and inclusive environment; c) took the lead role in some part of the project and in this way shared the leadership. Additionally, you should also state and discuss (in a sub-section named Meeting Objectives) which of the objectives (milestones, etc.) that you initially set in the project-plan (as part of your Analysis report) are met and at which level. You should consider and refer to your project plan while writing this section.
In a section (named New knowledge Acquired and Applied) you should explain the new knowledge you acquired and applied during the whole project and which learning strategies you used to acquire that knowledge.
The report is to be accompanied by the software/hardware system itself along with a User's Manual including installation instructions.
A sample outline of your final report can be like the following. Section 4 and 5 should be very detailed.
1. Introduction 2. Requirements Details 3. Final Architecture and Design Details 4. Development/Implementation Details 5. Testing Details 6. Maintenance Plan and Details 7. Other Project Elements 7.1.Consideration of Various Factors in Engineering Design 7.2.Ethics and Professional Responsibilities 7.3.Judgements and Impacts to Various Contexts 7.4 Teamwork Details 7.4.1) Contributing and functioning effectively on the team 7.4.2) Helping creating a collaborative and inclusive environment 7.4.3) Taking lead role and sharing leadership on the team 7.4.4) Meeting objectives 7.5 New Knowledge Acquired and Applied 8. Conclusion and Future Work 9. Glossary 10. References
User Manual:
You will write a user manual for your application/system. The manual will help
the users of the application/system to use your application/system easily.
Presentation and Demo:
Students are to present their work at the end of the semester. They
are required to turn up on time and are properly prepared. Computer
projectors will be available if they want to use them. Each team will
have 25 minutes for their presentations.
It is strongly suggested that team members practice their talk at
least a couple of times beforehand, to ensure they can get the major
points across in the given time.
The team is required to dedicate 5-10 minutes of their time for a
demonstration of their project. Students may bring their own hardware or
use the notebook available in room of presentation.
Return of materials {Due: 5pm last day of the semester}
Students are required to return all materials which they may have
borrowed from their supervisor, including books, research papers,
notes, software, etc. by 5pm on the last day of the semester.
Additionally the supervisor may require copies of any software that
was developed as part of the project to be handed in at the same
time. Failure to do this may mean that graduation is delayed!
Grading
Total grade has three components:
The letter grades will be assigned according to the following table:
Range Grade 90-100 A 85-89 A- 80-84 B+ 75-79 B 70-74 B- 65-69 C+ 60-64 C 55-59 C- 50-54 D+ 45-49 D 0-44 F
Project Evaluation Form: Excel file.