Overview This Module will serve as a review of CS 410 and an introduction to CS 411W. We will discuss the various, communication tools, hardware tools, and software tools for this semester. Objectives At the end of this module, students will be able to:
Relevance The business and research communities provide require online communication and collaboration using asynchronous and synchronous tools. Students will function as effective members of geographically separated team by contributing to the development of a Docker based prototype on a CS Department provided virtual machine (VM). | Activities
Getting Started
The Fun Part of Module 1 - Prototype Foundation
Prototype Progress
General Lab Requirements & Expectations
Lab 1
|
Overview The work will begin on the prototype development environment. Teams must configure their virtual machines to support development. Development milestones will be revisited with a focus on defining subtasks for each milestone. Objectives At the end of this module, students will be able to:
Relevance We will leverage agile development to design and build a prototype. This is based around user stories that may change (usually do) along the way. The goal of this module is to confirm mentor acceptance of the development approach. Lab 1 is representative of the type of descriptive documents students will be required to create in the workforce. | Activities
Git
Prototype Milestones & Design
Prototype Progress & Demo
Prototype Structure
Lab 1
Recitation Notes
|
Overview The goal of Module 3 is to prepare a detailed list of tasks necessary to complete each prototype milestone. The tasks will have associated timelines and resources. This will allow for the creation of a weekly “to do” list for the team and each individual of the team. Lab 2 describes and defines the specifications and requirements. The mentors should be actively consulted during this design process. Objectives At the end of this module, students will be able to:
Relevance An absolutely critical component of software design is the writing of specifications and requirements. Also critical is the ability to provide software code based upon provided documents. | Activities Development Schedule
Team Evaluation
Specifications & Requirements
Lab 2
Supplemental References
Recitation Notes
|
Overview Testing is notoriously given the least amount of time and attention in software development. You should recall Test-Driven Development (TDD) from your previous coursework. We are currently implementing prototype functionality, yet need to simultaneously prepare test cases for our requirements. Significant progress should be made on software development over the next four weeks. Each team will collaborate on an outline of Lab 3 (i.e., the Test Plan). Objectives At the end of this module, students will be able to:
Relevance Software development in industry is heavily dependent upon adherence to requirements. The only way to guarantee that the correct software solution to a problem has been achieved is through verification and validation via testing. If the test cases are not written to properly assess the development, time, money and credibility are lost. Possibly resulting in job loss and business failure. Students will experience the detailed process of this critical V & V element using their prototypes as the test bed. | Activities
Lab 3
Lab 3 Examples
Team Evaluation
Recitation Notes
|
Overview The primary objective of this module is to practice agile (potentially scrum) development of the prototype with frequent instructor and mentor interaction. Weekly progress examinations will be conducted, and feedback will be provided. Adherence to requirements and development toward correct validation and verification is expected. Objectives At the end of this module, students will be able to:
Relevance The ability to effectively communicate the purpose of user interfaces is a part of software engineering. The ability to take the reader of a user manual step-by-step through the usage of the screen is a skillset needed in industry. If a user cannot understand the interface, they may not utilize the product. The process of interim reviews of software development requires unique skillsets:
| Activities
Lab 4
User Manual Examples References
Team Evaluation
Recitation Notes
|
Overview This module guides the student to successful completion of all written labs (re-writes). Demonstrations will be necessary to gain approval of their mentor, which is required by the end of the semester. The goal is to provide each student with an appreciation of industry’s expectations upon graduation with a degree in computer science. Objectives At the end of this module, students will be able to:
Relevance At the end of every software development process industry members must conduct Project Postmortem. The goal is to repeat the aspects that were great, and avoid those that cost them time and money. Keeping on top of customer expectations is critical in providing a useful product that correctly solves the prevalent problems that necessitated the need for a software solution. | Activities
Team Evaluation
Recitation Notes
|
This Module is an end-of-semester wrap up. We will revisit selected topics from throughout the semester. | Activities
|
This section lists all Lab rewrite deadlines. | Activities
|
The ODU Academic Calendar lists all deadlines and important dates.
All times in this schedule are given in Eastern Time.
Symbol Key | |
---|---|
Read: | |
Slides : | |
Event or important date | |
Read | |
Do lab: | |
Assignment: | |
Take the | |
Do: | |
In your recitation section: | |
Under construction: |