Computer Engineering Department
CS492 Senior Design Project II
Spring 2025
 

Course Deliverables:

1. Logbook
Each senior student is required to continue to use online project logbook and record the progress of their design project in their personal logbook. Using a logbook is a standard practice in the industry and it will help to keep information organized and available.

Here are some ideas for what you might include in your personal project logbook:
- A timeline: This could be a list of the tasks you have completed, along with the date you completed them. You might also include any deadlines you have set for yourself.
- Notes and reflections: Estimations, calculations, links, choices you prefer in each step, literature search efforts, drawings, handouts, personal thoughts and reflections concerning the project or process, and conversations with potential customers, sponsors and legal entities.
- Samples of your work: Depending on the nature of your capstone project, you might want to include examples of your work, such as drafts, sketches or code snippets.
- A record of your progress: You might want to keep track of your progress over time by including regular updates on the status of your project.
Please use Google docs to host your logbook. Students should share it with their supervisor and course instructors when requested. Adjust the permissions of the logbook document so that instructors has read&write access to the file for comments and suggestions.

2. Detailed Design Report Guideline:

System design/detailed design is the transportation of the analysis model into a system design model.

During detailed design, developers define design goals of the project, and decompose the system into smaller subsystems that can be realized by individual teams (subgroups). In the case of a software-intensive project, developers also select strategies for building the system, such as the hardware/software platform on which the system will run, the persistent data management strategy, the global control flow, the access control policy, and the handling of boundary conditions.

Extent and validity of the design principles that were used to carry out the project must be explained in detail. Creativity, that is the extent to which the team developed a novel solution to the design problem while still achieving a functional design, must be clear.

The detailed information about your detailed design and the related formal expressions, models, diagrams, architectures, charts should be the major part of your detailed design report.

In your system design report, you should also write in detail about how you considered public health, safety,security and welfare, as well as global, cultural, social, environmental, and economic factors in engineering design process (in analys and in design part). You will write in your system design report (in a section named Consideration of Various Factors in Engineering Design) how these factors affected your design. You should take each factor one by one and discuss it. It is possible that your analysis/design may not be affected by a particular factor. You will indicate the level of effect (on the scale of 0 -none- to 10 -maximum-) for each factor. After discussions, you will include a table of factors and effects.

In your detail design report, you will also write how the teamwork is done during the project, in a section called Teamwork Details. 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.

Please have a separate sub-section for each of the last 3 items (a, b, c) above.

For the Test Cases section, you are expected to list functional and non functional test cases you will execute during and after implementation phase of your project and components. A complete consumer mobile application end-to-end integration testing usually contains 1000+ test cases. For this report, you can simplify and consolidate them into 50+ test cases.

Divide this section in to two and just write procedures for "software test engineers" to be sure that the solution performs as expected. The aim is to provide correct directives for verifying and validating the functionality of your product by test engineers without accessing to the source code. Test cases should be written in the form of integration tests not in unit tests.

At the second non-functional tests sub-section, you should list the planned system integration tests in order to be sure that, performance,security, stability, compliance and reliability of your solution meets the requirements of your users. You don't need to implement test tools or code or create scripts for automatization of tests, this section should just contain procedures to check the functionality of your product by humans (test engineers).

You don't need to execute and note results of your tests in this Detail Design Report, results of your test cases and scenarios will be documented in Final Report. See https://www.softwaretestinghelp.com/manual-testing-tutorial-1/ for more information about manuel software integration testing.

Each test case should contain at least below information:

This year, previous HLD and LLD reports for capstone projects are combined and simplified. You can still check previous years' submissions but review also below sample TOC. Keep the report simple and put differentiator elements of your design in order to emphasise them.

The following sample TOC 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 and with your supervisors during progress meetings.

Again there is no single way to organize such a report; a sample TOC for an object-oriented software system would be as follows:

1. Introduction  
  1.1 Purpose of the system  
  1.2 Design goals (Usability, Performance, Reliability, Marketability, Extendibility,Security, Scalability, Maintabilty, Flexibility, Modularity, Aesthetics, etc)
  1.3 Definitions, acronyms, and abbreviations  
  1.4 Overview  
2. Current software architecture (competitors,alternative and current solutions,if any)  
3. Proposed software architecture  
  3.1 Overview   
  3.2 Subsystem decomposition
  3.3 Hardware/software mapping (if your capstone project contains hardware components)  
  3.4 Persistent data management (if your project requies storing extraordinary amount of data and if you, as a team, coded or planning to implement special FS or DB)  
  3.5 Access control and security (if your project requires special access control and requires special authentication for your users.
4. Subsystem services
5. Test Cases (functional and non functional test cases, procedures and expected results)   
6. Consideration of Various Factors in Engineering Design 6.1 Constraints 6.2 Standards 7. Teamwork Details 7.1 Contributing and functioning effectively on the team 7.2 Helping creating a collaborative and inclusive environment 7.3 Taking lead role and sharing leadership on the team 8. Glossary 9. References

Each team also needs to upload their Detail Design Report to project web page.

References:


3. Design Project 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 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 3, 4 and 5 should be very detailed.

1. Introduction  
2. Requirements Details  
3. Final Architecture and Design Details  
4. Development/Implementation Details  
5. Test Cases and Results
6. Maintenance Plan and Details  
7. Other Project Elements  
		7.1. Consideration of Various Factors in Engineering Design  
			7.1.1 Constraints
			7.1.2 Standards
		7.2. Ethics and Professional Responsibilities   
		7.3. Teamwork Details  
			7.3.1. Contributing and functioning effectively on the team to establish goals, plan tasks, and meet objectives  
			7.3.2. Helping creating a collaborative and inclusive environment  
			7.3.3. Taking lead role and sharing leadership on the team  
			7.3.4. Meeting objectives  
		7.4 New Knowledge Acquired and Applied  
8. Conclusion and Future Work  
9. Glossary  
10. References  

Other remarks about capstone project delivery:

User Manual: Your application or designed system must have a user manual. The manual will help the users of the application/system to use your application/system easily. It does not need to be a separate document. You can embed instructions into your application and GUI or put it on your project website. An introductory first-use wizard, help buttons, and explanations on each screen, FAQ pages, and sample scenarios are also counted as part of user manual.

Code & Executable & Other Deliveries: You should finalize the coding and do final commits to your project repository before submitting the final report.You can continue to tune your project code but major functions and requirements should be completed before submitting the final report.

Do not forget to update your personal logbooks and your project website to point to the right links for your repositories, login page, app store (if you decide to publish your solution as), and put any other useful info that you want to share with your users and your instructors on project website before the deadline of the demo.

 

4. Presentation and Demo:

At the end of the second semester, before CSFair, there will be a demo session for teams to present their capstone project to course instructors and to supervisors. Each team will have 25 minutes for their demo session. The scoring rubric for presentation & demo is as follows:

Organization and General Structure of the Presentation & Demo: Points
Information needs to be presented in a clear and logical sequence. 10
Each team member should present their contribution to the project. The demo session will be online, still the students needs to be dressed professionally and handle the entire session and questions appropriately and professionally.
//Practice and practice together as a team to make smooth transitions between speakers. Practice more to use time efficiently. keywords: 10 Ways to Prepare for a Winning Team Presentation.
10
Introduction and a short (2-4 page) Presentation (5 minute):
Introduction should give clear overview of the project and thorough background information about the target problem that you are trying to solve. Teams should present their project plan, current status and progress (gantt chart) of the tasks as next couple of slides.

//Remember the elevator speech and innovation wheel for the first slide. On the second slide, a graphical representation of the status of your main tasks e.g. research, design, frontend, backend (keywords:software project status graph dashboard). You can also create a project health card to show the progress and risks (keywords: software project health card). Since this is a design project, you should also show graphical representation of the architecture you designed (microservices, docker, gateways, containers, backend db,etc)
35
Demo (10-15 minute):
  • Prepare your demo environment and please ensure that all resources including hardware, software, simulators to run the project are set up and working correctly.
  • Identify the key features of your capstone project and select the most critical features of the project to showcase during the demo. Focus on tyour unique, innovative, and valuable features. (do not waste your time to demonstrate basic functions e.g. user creation, authentication, password change, etc.

  • Plan a demo flow. Start with a presenting the GUI parts of your project, then proceed to showcase the key features, followed by a summary of the project's benefits. Describe the technical challenges and successes you encountered. Explain what you learned from the process and how this was a learning stretch for you.
40
Q & A Session (1-3 minute):
We expect teams to handle the questions that may be asked during the session appropriately and professionally. 5

 

References:
[1] 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.
[2] Wikipedia, List of Collaborative Softwarehttps://en.wikipedia.org/wiki/List_of_collaborative_software, Accessed on 22 October 2019.
[3] Wikipedia, Comparison of Project Management Software, https://en.wikipedia.org/wiki/Comparison_of_project_management_software, Accessed on 22 October 2019.[4] CATME Smarter Teamworkhttps://catme.org/, Accessed on 22 October 2019.
[5] TEAMMATES - Online Peer Feedback/Evaluation System for Student Team Projectshttps://teammatesv4.appspot.com/, Accessed on 22 October 2019.