Justin Harrison — ePortfolio

CS-499 Capstone Portfolio | Southern New Hampshire University

Professional Self-Assessment

Throughout my time in the Computer Science program at Southern New Hampshire University, I have developed the foundational skills and professional mindset required to contribute meaningfully in the field of software development. The coursework over the last two years has allowed me to reflect on my growth, refine my aforementioned skills, and better understand how academic concepts are applicable in real-world scenarios. This Computer Science capstone experience represents the culmination of that growth and demonstrates my readiness to enter into the computer science profession.

Over the course of the program, I have gained experience in object-oriented programming, software design principles, algorithms and data structures, database management, and secure coding practices. Courses such as CS-360 (Mobile Architecture and Programming) gave me the chance to not only understand how to write functional code, but how to design systems that are maintainable, efficient, and secure. Developing this ePortfolio required me to revisit earlier work from this course with a more critical eye. I was easily able to identify weaknesses and opportunities for improvement. This is an essential capability in professional software engineering.

There was an emphasis on collaboration/communication throughout the Computer Science program. This was made apparent via the use of peer discussions, instructor feedback, code reviews, etc. The code review included in this portfolio reflects this skill, as it required me to analyze existing code, identify flaws or potential areas for improvement, and communicate planned enhancements in a way that would be clear and understandable. This portion of the capstone gave me the opportunity to use both verbal as well as written communication in order to explain my thought process as it pertains to said enhancements.

Another critical skill developed throughout the program is a security-conscious approach to software development. Through coursework and applied projects, I learned to anticipate potential vulnerabilities related to data handling, user input, etc. This mindset influenced the enhancements made to my capstone artifact (especially in the areas of input validation, controlled deletion operations, data integrity, and obscuring password inputs, etc.). By implementing confirmation dialogs and validation checks, I reduced the risk of accidental data loss and invalid state changes. Developing with security at the forefront of my mind has reinforced the importance of designing applications that not only function as desired, but also protect user data. This perspective is essential in software development.

The primary artifact features in this portfolio is a mobile weight-tracking application originally developed in CS-360 (Mobile Architecture and Programming). I selected this artifact because it provided a strong foundation for demonstrating growth across all three CS-499 areas of focus (software engineering and design, algorithms and data structures, and databases).

For the software engineering and design enhancement, I focused on improving usability, input validation, and application structure. I implemented confirmation dialogs for deletions and customizable settings. I also disabled actions when inputs are invalid. All of these changes made for an improved user experience. For the algorithms and data structures enhancement, I incorporated mathematical logic and data analysis to provide meaningful insights to the user. Features such as weight-change calculations, trend analysis, and goal projection required structured data traversal and algorithmic reasoning. These enhancements demonstrate my ability to design and evaluate computing solutions using algorithmic principles. For the database enhancement, I focused on improving data organization and retrieval. For this category, I implemented sorting, entry counting, safe mass deletion operations, as well as search functionality. These changes demonstrate my ability to use database concepts to deliver value while maintaining data integrity and security.

Creating the enhancement narratives and this professional self-assessment has allowed me to reflect on challenges encountered during development, including balancing feature scope with maintainability and ensuring that enhancements are aligned with CS-499’s course outcomes. This reflective process reinforced the importance of iterative development, testing, and well thought out design decisions.

Together, the artifacts in this portfolio demonstrate a cohesive skill set centered on mobile application development. They showcase my ability to design user-focused software, apply algorithmic thinking, manage data, and communicate my work professionally. As I move forward in my career, I do so knowing that these experiences have prepared me to design, build, and refine software solutions that meet real world requirements and industry standards.

Code Review

This section contains my pre-enhancement code review video, where I analyze the original artifact and discuss the enhancements made across three categories: software engineering and design, algorithms and data structures, and databases.

Capstone Artifacts & Enhancements

Original Artifact and Enhancements [Click Here]

This section contains my original capstone project and all three enhancements, each aligned with CS-499 learning outcomes. Project names are as follows:

- Original Artifact: “Original Artifact Weight Tracker Project (CS-360 Mobile Architecture Application).zip"

- Enhancement 1: “E1 Complete Justin Harrison Weight Tracker (CS-360 Java Project).zip"

- Enhancement 2: “E2 Complete Justin Harrison Weight Tracker (CS-360 Java Project).zip"

- Enhancement 3: “E3 Complete Justin Harrison Weight Tracker (CS-360 Java Project).zip"

Narratives

Narratives [Click Here]

This section contains the written narratives for each enhancement submitted in CS-499. Each narrative explains the purpose of the enhancement, the changes made, and how the enhancement aligns with specific course outcomes. Narrative names are as follows:

- Enhancement 1 Narrative: “E1 Complete Narrative.docx”

- Enhancement 2 Narrative: “E2 Complete Narrative.docx”

- Enhancement 3 Narrative: “E3 Complete Narrative.docx”