The state of the art idea behind this is to give users the capability to have recordings of code collaboration sessions which are saved after each of the groups’ sessions. This aims for an enhanced experience in regards to project development; the users can reflect on the discussions of the previous sessions to aid development of their project. Also, the user would be able to create their own audio and visual notes on the project and make them available for their respective development team to see. These would be combined with an online integrated development environment, which is a platform in which code written in different languages is able to be compiled, interpreted, and ultimately ran within any session online. The Easy Code Collab is essentially a combination of technologies such as Skype, a popular application for voice and video communication and Cloud 9, an online code based editor which supports coding in several different programming languages. Easy Code Collab will contain both of these major ideas of technologies into one powerful application. It seeks to fill a gap with team communication and project development, striving for convenience and efficiency for the …show more content…
The process will involve implementation of these functionalities in individual stages with each stage requiring a sustained period of iterative testing, following the six stage software development life cycle closely. The feasible amount of time development of this project will take is around 18-24 months; this timeline will be detailed later in this proposal. By the end of the project, the software should have the basic functionalities implemented: code editor with runnable environments, hardware integration, and server storage for the project, video, and audio files. This platform should be supported by most of the basic internet browsers: Firefox, Chrome, Internet Explorer, etc. Some of the main challenges this project will face is mainly the amount of data which will need to be saved for each development team. Storing many large scale files (video, audio, source) seems inherently costly, but a seemingly plausible solution is cloud based storage instead of hardware based storage. That is, another service can be used to perform our large scale data storage (with a price, detailed later in the proposal). Fortunately, an easy solution requires the use of Amazon Web Services (AWS) which provides a reliable and large storage