Application Development Design Studio Case Study
This portfolio-safe case study summarizes selected IST 261 Application Development Design Studio I work focused on designing and building a Java-based Productivity Assistant application using object-oriented modeling, noun/verb analysis, MVC architecture, persistent data planning, GUI list/detail workflows, task queues, employee/task management, and testing.
Overview#
IST 261 was an application development design studio course centered on planning, designing, iterating, and implementing a Java application.
The primary project was a Productivity Assistant concept for remote-work task tracking. The application idea focused on helping employers assign and monitor work while allowing employees to track tasks, time, breaks, progress, and reports without invasive remote monitoring.
This course is valuable in my portfolio because it connects several important software-development areas:
- project proposal writing
- domain analysis
- noun/verb analysis
- class identification
- object-oriented modeling
- Java application development
- MVC architecture
- persistent data strategy
- task and employee data structures
- queue-based task assignment
- GUI list/detail workflows
- testing
- privacy-aware product thinking
This page is intentionally written as a portfolio-safe summary. It does not publish raw Java source code, full project ZIP contents, private course instructions, complete academic submissions, or copy-paste-ready implementation details.
Why This Project Matters#
IST 261 is one of the clearest examples of my Application Development focus area because it moved beyond individual programming exercises and into a more complete application design process.
The work required thinking through:
- what problem the application solves
- who the users are
- what data the system needs
- which classes represent the domain
- which methods support user actions
- how data should persist after runtime
- how GUI views should interact with controller logic
- how task data should be stored and retrieved
- how test cases support application reliability
- how privacy concerns affect product design
That makes this page a stronger software-design artifact than a simple programming lab.
Portfolio-Safe Publishing Approach#
Security and academic integrity note: This case study summarizes application design and Java development work without publishing raw source code, full project ZIP contents, complete academic submissions, private course materials, or copy-paste-ready solutions.
This page excludes:
- raw Java source code
- complete project ZIP contents
- full academic submissions
- private course instructions
- complete assignment answers
- private student identifiers
- copy-paste-ready implementation details
- full screenshots or IDE files
Instead, it presents:
- design process
- application concept
- object model
- architecture themes
- data strategy
- testing approach
- software engineering lessons
- cybersecurity and ServiceNow relevance
Project Concept: Productivity Assistant#
The Productivity Assistant was designed as a remote-work productivity application.
The core idea was to support two major user groups:
- employers, who need task visibility, project progress, assignment tracking, and reporting
- employees, who need a way to manage tasks, track work time, track breaks, and generate reports without intrusive monitoring
The application concept was privacy-aware. Rather than building remote surveillance software, the idea focused on user-directed productivity tracking and report generation.
This distinction matters because application design is not only technical. Product decisions affect privacy, trust, user adoption, workflow clarity, and organizational risk.
Major Workstreams#
Project Proposal#
Defined the application domain, problem opportunity, proposed solution, user needs, privacy concerns, productivity goals, technical risks, and design challenges.
Proposal
Noun/Verb Analysis#
Identified core domain objects and behaviors such as Employer, Employee, Task, Report, task assignment, task selection, time tracking, break tracking, and report generation.
Domain Analysis
Object-Oriented Modeling#
Built Java classes representing people, employees, managers, workgroups, tasks, reports, employee lists, task lists, and related application behavior.
OOP
MVC Architecture#
Worked with model-view-controller structure, including controller actions, views, list/detail screens, table models, and employee data management.
MVC
Persistent Data Strategy#
Planned how employee and task data should be stored, loaded, updated, and handled across runtime sessions.
Persistence
Collections and Task Queue#
Identified where collections were needed, including task queue behavior for first-in-first-out task assignment and employee data structures for availability tracking.
Collections
GUI List/Detail Workflow#
Developed list and detail views for employee-style records, including create, show details, update, delete, save, and quit-style actions.
GUI Workflow
Testing#
Created manual test and JUnit-style test artifacts for selected application components, including task queue and workgroup-related behavior.
Testing
Application Development Evidence#
Technical Workflow#
Define the Problem and Users#
Started with a project proposal focused on remote-work productivity, employer reporting, employee self-tracking, privacy concerns, and productivity improvement.
Proposal
Identify Nouns, Verbs, and Classes#
Used noun/verb analysis to identify core classes, data fields, user actions, and candidate methods.
Domain Analysis
Build the Object Model#
Developed Java classes for people, employees, managers, workgroups, tasks, and reports to represent the application domain.
OOP Model
Add MVC Structure#
Moved toward model-view-controller structure using controller actions, employee model objects, table models, and list/detail views.
MVC
Plan and Implement Persistence#
Planned how employee and task data should be stored, loaded, updated, and recovered across sessions.
Persistence
Add Collections and Task Queue Logic#
Identified queues and other data structures for task handling, employee availability, and evolving task/employee datasets.
Collections
Test and Refine#
Created manual and automated test artifacts to validate selected application behavior and support better reliability.
Testing
Domain Model Summary#
The Productivity Assistant project centered around a small but meaningful application domain.
MVC and GUI Evidence#
The later implementation work included MVC-style structure and GUI list/detail behavior.
Key elements included:
- controller actions
- list view behavior
- detail view behavior
- table model use
- employee row display
- create action
- show details action
- update action
- delete action
- save action
- quit action
- next task display
- separation between model data and view behavior
This is important because MVC-style thinking maps closely to professional application design. It encourages separation between data, interface, and control logic instead of placing all behavior in one file.
Persistent Data Strategy#
The persistent data strategy focused on two major data areas:
- employee data
- task data
Employee data included fields such as name, ID, address, phone number, email address, and hourly rate. This data needs persistence because employees may be added, removed, or updated over time.
Task data included task description, due date, priority level, completion status, and history. This data needs persistence because task records change frequently and may be updated many times during the workday.
The design also considered:
- loading data at application startup
- saving data after changes
- file-not-found and error handling
- human-readable storage tradeoffs
- security concerns for sensitive HR-style data
- the difference between frequently changing task data and less frequently changing employee data
This was a strong design exercise because persistence decisions affect security, privacy, reliability, maintainability, and user trust.
Collections and Data Structure Decisions#
The project included a specific analysis of where collections should be used.
The task workflow was a good fit for a queue because tasks should be assigned or processed in the order they arrive. That maps to first-in-first-out behavior.
Employee availability was treated differently. Employees may become available in non-sequential order, and the application needs to identify an available employee rather than only process one fixed sequence. This encouraged thinking about different collection types and why one data structure is not always appropriate for every problem.
Concepts covered included:
- queue behavior
- first-in-first-out task handling
- employee availability tracking
- vector/list-style access
- linked list wrapper concepts
- add/get/set/remove operations
- searching tasks
- examining queue contents
- reading and writing list data
- serialized persistence artifacts
Testing Evidence#
Testing artifacts supported selected project components.
The project included:
- manual testing artifacts
- JUnit-style test artifacts
- Employee-related tests
- WorkGroup-related tests
- TaskQueue tests
- test harness behavior
- component-level validation thinking
The most important portfolio value is not the exact test code. The value is that the application was treated as something that should be validated, not just written once and assumed to work.
Software Design Skills Demonstrated#
Privacy and Security Considerations#
The Productivity Assistant concept included privacy and security concerns from the beginning.
The proposal distinguished between productivity tracking and invasive remote monitoring. The application concept focused on user-directed work tracking and report generation instead of constant surveillance.
The design also recognized that employee and task data may contain sensitive business and HR-related information.
Security and privacy considerations included:
- avoiding invasive remote monitoring
- considering what data should and should not be accessible
- recognizing HR-style data sensitivity
- understanding that data storage choices affect privacy
- considering unauthorized access risks
- recognizing the need for encryption in a real-world system
- understanding that application design decisions affect downstream security
- designing for user trust and adoption
This makes IST 261 useful not only as a software project, but also as evidence of security-aware product thinking.
Difference from IST 240, IST 242, and IST 311#
IST 261 fits into the software-development progression differently from the other programming courses.
Together, these courses show a progression from basic Java programming to intermediate OOP, application design, and stronger software engineering foundations.
Cybersecurity and ServiceNow Relevance#
This project supports cybersecurity and ServiceNow work indirectly but meaningfully.
The cybersecurity value comes from understanding:
- how applications are designed
- how domain objects become classes
- how data is stored and persisted
- how task workflows are modeled
- how GUI workflows affect users
- how data structure choices affect behavior
- how privacy concerns should influence application design
- how testing supports reliability
- how business requirements become technical behavior
The ServiceNow relevance is also clear. ServiceNow work often involves:
- records
- tables
- fields
- task assignment
- work queues
- ownership
- reporting
- workflows
- forms
- UI actions
- data persistence
- role-based access
- process design
- requirements gathering
- stakeholder communication
IST 261 supports that foundation by showing application design and workflow thinking before implementation.
What I Learned#
This course reinforced several lessons:
- good applications start with a clear problem and user need
- noun/verb analysis helps turn requirements into classes and methods
- object models should reflect the real domain
- privacy and user trust should be considered early in the design process
- MVC helps separate data, user interface, and control logic
- persistence must be planned before data becomes important
- employee data and task data have different access and update patterns
- queues are useful when order of arrival matters
- testing should validate components rather than relying only on manual use
- GUI workflow should be understandable to users
- application design choices affect security, maintainability, and adoption
Professional Relevance#
This project supports roles and tasks involving:
- ServiceNow SecOps consulting
- cybersecurity analysis
- application design
- requirements gathering
- workflow modeling
- task management systems
- vulnerability management support
- technical documentation
- data modeling
- software troubleshooting
- privacy-aware product thinking
- stakeholder communication
- testing and validation
It is especially relevant to ServiceNow because ServiceNow implementations are built around process design, data models, task records, assignment logic, workflows, reporting, and user-facing forms.
Portfolio-Safe Redaction Notes#
This case study intentionally excludes:
- raw Java source code
- complete project ZIP contents
- full academic submissions
- complete assignment answers
- private course instructions
- private student identifiers
- copy-paste-ready implementation details
- full screenshots or IDE files
The goal is to show application design, modeling, architecture, and software-development progression without publishing raw academic work.
Related Portfolio Areas#
Application Development#
This work supports Java application design, domain analysis, OOP modeling, MVC, persistence, collections, GUI workflows, and testing.
Application Development
ServiceNow SecOps#
Task assignment, reporting, work queues, ownership, persistence, and workflow modeling map naturally to ServiceNow implementation thinking.
SecOps-Relevant
Cybersecurity Analysis#
Application design knowledge supports understanding data flow, user behavior, persistence, privacy risks, and how software decisions affect security.
Cybersecurity-Relevant
HCI and Workflow Design#
The project considered user experience, usability, employer/employee workflows, privacy concerns, and adoption barriers.
HCI-Relevant
Next Steps#
This project can later be connected to:
- the software foundations capability section
- the Application Development focus area in education
- the ServiceNow workflow design narrative
- a task assignment workflow concept
- a persistence and data governance note
- a workflow modeling / HCI evidence section
- the IST 240, IST 242, and IST 311 progression path
For now, this page serves as the main portfolio-safe summary of my IST 261 Application Development Design Studio I work.