The Project

Constraints, Risk and Feasibility

Time management

Keeping focused and committed to a list of deadlines may be a difficult task. We can mitigate this with a strong commitment to milestones.

Unforeseen challenges

None of us are well-versed in MATLAB, and we may accordingly have greater difficulties than anticipated in becoming familiar enough with the program and language to be able to quickly make progress on our milestones. We can potentially avoid all of us needing to learn MATLAB by porting over the existing code to a different language like Python. This would still require at least one member of our group to learn MATLAB well enough to the extent that they can translate the existing code.

Lack of experience with CNNs

None of us have had any experience with CNNs, so we may find it difficult to understand what is going on in the existing code, and to improve its performance. If we are struggling to learn through online resources, we may be able to seek help from UCSD faculty, such as Professor Cottrell who teaches a Neural Networks course.

Group Management

Major roles in our group’s management

Since we, as a team, have decided to all work solely on development and research rather than assigning a project manager, we expect to hold each other accountable for assigned tasks. Development decisions will be made as a team. Hard deadlines will be decided according to the needs of Dr. Sirovic.

Decisions by the team

Development decisions will all be made via a majority consensus within our team. In the case that a decision cannot be made, or the decision requires approval from Ana we will reach out to her for feedback.

Communication within the team

With Ana, we plan on communicating with her via email because of her extended leaves for meetings. However, our team will meet with her at her office in Scripps for logistical information and any aid on our part of the project. As for meetings with our team, we plan on working daily as a team at any one of our apartments and/or work at any lab computers at school if need be (i.e. in order to use MATLAB). As for constant communication, we will use Messenger in order to update each other on any progress made remotely or such of the like.

Dealing with scheduling conflicts

We will know we are off schedule if we are not meeting our target milestone dates. Individual team members can ask for help from the rest of the team if they are unable to make enough progress on their own tasks. If we are falling behind as an entire group, we will have to re-evaluate the amount of time that we are devoting to the project and discuss together what changes we can make in our personal schedules to get more time on the project.

Responsibility for deliverables and milestones

Because we will all be working together in reaching our milestones and delivering, we will all be responsible in making sure we deliver on time and accomplish our tasks per milestone.

Project Development

Development roles

For our team’s development roles, each member is a software developer and researcher.

Hardware/software used

Our work will be done through Matlab so we will be working with existing code in Matlab. The existing code will be given by Ana and Matlab is available for us to use through the school. There is no software/hardware that we currently anticipate needing a purchase. We each have access to MATLAB through UCSD.

Testing

Testing will be done on an as-needed basis during development by each team member. Upon completion of a code module, the responsible team member will demonstrate it to the rest of the team who can propose further tests in order to validate the correctness and quality of the code.

Documentation

We will use Github for documentation. We will provide weekly updates for the team’s current progress and maintain appropriate documentation for each code module that we produce and/or maintain and update.

Topics:

The Project

Constraints, Risk and Feasibility

Time management

Keeping focused and committed to a list of deadlines may be a difficult task. We can mitigate this with a strong commitment to milestones.

Unforeseen challenges

None of us are well-versed in MATLAB, and we may accordingly have greater difficulties than anticipated in becoming familiar enough with the program and language to be able to quickly make progress on our milestones. We can potentially avoid all of us needing to learn MATLAB by porting over the existing code to a different language like Python. This would still require at least one member of our group to learn MATLAB well enough to the extent that they can translate the existing code.

Lack of experience with CNNs

None of us have had any experience with CNNs, so we may find it difficult to understand what is going on in the existing code, and to improve its performance. If we are struggling to learn through online resources, we may be able to seek help from UCSD faculty, such as Professor Cottrell who teaches a Neural Networks course.

Group Management

Major roles in our group’s management

Since we, as a team, have decided to all work solely on development and research rather than assigning a project manager, we expect to hold each other accountable for assigned tasks. Development decisions will be made as a team. Hard deadlines will be decided according to the needs of Dr. Sirovic.

Decisions by the team

Development decisions will all be made via a majority consensus within our team. In the case that a decision cannot be made, or the decision requires approval from Ana we will reach out to her for feedback.

Communication within the team

With Ana, we plan on communicating with her via email because of her extended leaves for meetings. However, our team will meet with her at her office in Scripps for logistical information and any aid on our part of the project. As for meetings with our team, we plan on working daily as a team at any one of our apartments and/or work at any lab computers at school if need be (i.e. in order to use MATLAB). As for constant communication, we will use Messenger in order to update each other on any progress made remotely or such of the like.

Dealing with scheduling conflicts

We will know we are off schedule if we are not meeting our target milestone dates. Individual team members can ask for help from the rest of the team if they are unable to make enough progress on their own tasks. If we are falling behind as an entire group, we will have to re-evaluate the amount of time that we are devoting to the project and discuss together what changes we can make in our personal schedules to get more time on the project.

Responsibility for deliverables and milestones

Because we will all be working together in reaching our milestones and delivering, we will all be responsible in making sure we deliver on time and accomplish our tasks per milestone.

Project Development

Development roles

For our team’s development roles, each member is a software developer and researcher.

Hardware/software used

Our work will be done through Matlab so we will be working with existing code in Matlab. The existing code will be given by Ana and Matlab is available for us to use through the school. There is no software/hardware that we currently anticipate needing a purchase. We each have access to MATLAB through UCSD.

Testing

Testing will be done on an as-needed basis during development by each team member. Upon completion of a code module, the responsible team member will demonstrate it to the rest of the team who can propose further tests in order to validate the correctness and quality of the code.

Documentation

We will use Github for documentation. We will provide weekly updates for the team’s current progress and maintain appropriate documentation for each code module that we produce and/or maintain and update.