Our Process

Our development processes are designed to decrease development time, increase communication and ensure accountability.At Sunshine Learning Systems, we believe that the development process should be empowering to the clients.  As such, we follow the Agile Programming methodologies.  To keep our clients in control, we work in development cycles of no more than two to four weeks.   Each development cycle will have well defined deliverables.  At the end of each development cycle, we push the current work to a preview server for a client review.  We then meet with the client to go over the current progress and go over what is needed for the next phase.  Of course we also provide regular communication with the clients during the course of each development cycle.

On every project, it is inevitable that clients will want to make changes once they experience the features, and our development process and technical architecture allows us to do this quickly and easily.  Our regular releases to the preview server allow our clients to experience the application as it is being built.  The short development cycles allow us to change how something looks or works while the system is still under construction.  It also means that we can start work with less detailed specifications because we can leverage what we have to add in features quickly, and then let the client request modifications to it so that it matches their requirements and gives them the look and feel they desire (even if they didn’t know exactly that was when we started).

Flexibility and Peace of Mind

Our process is designed to give our clients both flexibility and peace of mind.  Our clients have the opportunity to fine tune the project while it is being developed and they have regular checks to assure that the right progress is being made. We have the process and the tools to make it happen

Sunshine Learning Systems uses many tools to help keep our clients informed and allow them to provide us feedback.  All projects are managed using a project website, which includes a detailed plan for the project development with documentation, key milestones, and deliverables for both the project team and the client. These “to do” lists are particularly helpful for clients because client deliverables are kept in one place where they are easy to access and easy to track. This ensures that both the team members and clients meet deadlines for deliverables and the project stays on schedule.

As the project progresses, we track and manage each stage of the development process, allowing us to monitor every step of the process and every deliverable. In turn, we can easily communicate progress to our clients and avoid last-minute changes to the delivery schedule.

Quality is Part of Everything!

Although many development companies outsource their quality assurance (QA), Sunshine Learning Systems has their own in-house QA team. This allows us to quickly identify defects (bugs), and then communicate the information to programmers, clients and other stakeholders. Because both programming and quality assurance are performed onsite, the turnaround time for testing and fixing bugs is greatly reduced.

To optimize the quality assurance process, we incorporate a “defect tracking system”, Bugzilla, to monitor and track outstanding bugs and to log requested enhancements. With Bugzilla, we can track bugs and also facilitate communication between team members and clients with comments added to bug reports. At any given time, we can produce reports to show the status of each component, the number and type of bugs, the team member(s) assigned to the component, and a detailed description of each bug. Clients can also use Bugzilla is to report bugs and to request feature changes/additions.