Iteration 1: Due 03 18 @ 11:59PM - blively2/CS6232-SofaSoGood GitHub Wiki
Iteration 1: Overview
Database and Application Setup
-
Create the Database:
- Action: Establish a database named
CS6232-g#, where#reflects our group number. - Requirement: Before populating with test data, ensure the database design is error-free. Reach out if assistance is needed.
- Action: Establish a database named
-
Begin Application Development:
- Focus: Implement the application based on prioritized user stories, starting with key features for employees.
- Tools: Utilize Visual Studio, dividing tasks to cover view, model, controller, and data access layers.
GitHub Repository Management:
- Commit Regularly:
- Strategy: Maintain an organized repository with consistent commits. Structure the solution with clear folders (Controller, View, Model, DAL, DB scripts).
- Collaboration: Ensure all team members, including the instructor (
[email protected]orlyanguwg), are collaborators.
Feature Development for This Iteration:
-
Employee Authentication:
- Implement login and logout capabilities. Initially, storing passwords as plain text is acceptable, with a move to hashed passwords planned for subsequent iterations.
-
User Interface Consistency:
- Display the currently logged-in user's name and username across all application views.
-
Customer Management Features:
- Registration: Enable employees to register customers with comprehensive field validation (e.g., phone number formats).
- Editing: Allow modification of customer records, ensuring validation checks are in place.
- Searching: Facilitate customer searches using multiple criteria (ID, phone number, or full name).
Documentation and Submissions:
- Read_me.txt File:
- Contents: Include usernames/passwords for test logins, a status report on any unfinished features, and a directory to the DB script.
- GitHub Tagging:
- Use a clear tag (e.g.,
iteration 1) for the final commit to indicate the submission point for grading.
- Use a clear tag (e.g.,
- Member Contribution Evaluation:
- On Moodle, detail each member's contributions and the percentage of work done, with an option to recommend equal grading.
Task Distribution and Team Roles:
- Assignments by Functionality:
- Distribute tasks among team members based on the functionality, promoting comprehensive involvement with the project's various aspects.
- Scrum Practices:
- Continue applying Agile principles, ensuring regular team meetings and updates to manage the project efficiently.
Additional Guidance:
- Security Practices:
- Plan for the enhancement of security measures, such as implementing hashed passwords in future iterations.
- Collaborate:
- Maintain open lines of communication within the team and with the instructor for clarifications or troubleshooting.