Skip to content

JTM1987/CS-320

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CS-320 Portfolio Artifacts

This repository contains selected artifacts from CS-320 (Software Testing, Automation, and Quality Assurance).
For Project One, the primary portfolio submission is the Contact Service set:

  • 6-1ProjectOne/ContactService/Contact.java
  • 6-1ProjectOne/ContactService/ContactService.java
  • 6-1ProjectOne/ContactService/ContactTest.java
  • 6-1ProjectOne/ContactService/ContactServiceTest.java

Additional Project One work in this repository includes Appointment and Task services with matching JUnit tests, showing the same validation-first and test-driven quality approach across modules.

Reflection

How can I ensure that my code, program, or software is functional and secure?

I ensure functionality and security by validating all required inputs at object creation and update time, then enforcing those same rules in service operations. In this project, I used strict constraints such as maximum field lengths, non-null checks, and exact phone-number format validation, then backed those constraints with JUnit tests for both valid and invalid paths. I also tested duplicate IDs, missing records, and invalid lookup/update requests so failures are caught early and handled predictably.

How do I interpret user needs and incorporate them into a program?

I start from stated requirements and convert each one into a concrete rule in code plus a matching test case. For example, requirements like "ID must be unique," "phone must be 10 digits," and "address length is limited" became explicit validation methods and service-level checks. I treat tests as executable requirements: if a requirement exists, there should be at least one passing test for valid input and one failing test for invalid input.

How do I approach designing software?

I design software by separating responsibilities: data classes enforce field-level integrity, while service classes manage business operations like add, update, and delete. This keeps logic modular, easier to test, and easier to maintain. I also design for reliability by preferring small focused methods, predictable exceptions for invalid states, and broad test coverage so behavior remains stable as the code evolves.

About

Collection of coursework from CS-320: Software Test, Automation QA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages