Showing posts with label SDK. Show all posts
Showing posts with label SDK. Show all posts

Tuesday, 9 June 2015

Using SCRUM for Agile Development of Complex Apps

Here at Appdragon we believe in close Client engagement in our software development projects. A recent example is where one of our current client, social media firm Rottweiler Productions, are working closely with our SCRUM Product Owner and the SCRUM development team to evolve their latest offering, MatchDayMe (MDM).

MDM is complex in that it's a new concept and the requirements were difficult to pin down at the start of the project and they are evolving at a rapid rate as the project progresses.  Competitor activity, new library code, user expectations and desires all affect the way the client wants their iPhone and Android phone apps to look and feel and the functionality they need to deliver.

We could follow the traditional 'waterfall' model and spend endless meetings trying to pin the client down to a specific, well defined set of requirements.  It would cost him a fortune in expensive consultant and facilitator time and the minute the requirement specification was signed off, I guarantee it will require changing.


We can quickly get barriers removed by continuous sprint reviews, pulling in the Product Owner (and the client if the two aren't the same person) and scoping out individual features as we develop.

Most importantly, we can get feedback from the client on whether the function we've just "Sprinted" (if that's a correct SCRUM term) is actually what they wanted, or whether what they wanted is actually slightly different now they've seen how it works.

With SCRUM we evolve towards a quality end product which not only meets all of the Client's expectations, but goes beyond that. It meets the expectations the client didn't even have at the start of the project.

At Appdragon we're working towards having a team of fully trained and, where appropriate, accredited SCRUM professionals. We see that as being the best way to deliver the best possible solutions to our clients so that they can envisage their goals and objectives and please their own customers.



If you're interested in joining the Appdragon development team and learning how to develop in an agile way, contact us via our web site or email your CV to us.  We're currently recruiting in our Dhaka office, looking for especially talented developers with 2 years plus experience on iOS, Android and Python.  Don't worry - the SCRUM way of life is something easily learnt on the job and you'll love the way we work.

Thursday, 19 March 2015

Transferring Existing Repositories to GitLab

Here at Appdragon we have some of the best coders using the industry's best SDK tools and applications. One of the apps we use is GitLab.  Here, our system admin, Musa, provides a quick change of pace from our usual blogs and dives into something a little more technical.

We used to use Gerrit Code Review along with git-web before migrating to GitLab. So we had to transfer all our existing repositories to GitLab. This tutorial can also be used for migrating from other git based issue tracking systems. The GitLab documentation says to put all your bare repositories, the ".git" directories, into this location - "/home/git/repositories" and then use the import command. But this doesn't do the job, it only creates blank empty projects under the Admin group with no source files or previous issues. So to solve this, just follow the steps below -

?
1
2
3
4
5
6
7
8
# Copy all the bare repositories from Gerrit to GitLab
# You should change $newdir into something you prefer
# The command is going to create a new directory inside the repositories directory
sudo cp -R /usr/local/gerrit2/git /home/git/repositories/$newdir
# Change ownership of the directory
sudo chown -R git:git /home/git/repositories/$newdir

This is for Gitlab versions 6 and less
?
1
2
3
4
5
6
7
# And now you can run this command, provided by the GitLab Team
# Change to root user and go to GitLab's directory
cd /home/git/gitlab
sudo su
sudo -u git -H bundle exec rake gitlab:import:repos RAILS_ENV=production

For Gitlab versions 7 and onwards (That is, if you've installed Gitlab using the debian package)
?
1
2
# Just run the following command
sudo gitlab-rake gitlab:import:repos
When you run the above command GitLab is going to create a new group named $newdir (i.e., the directory's name) and import the repositories perfectly. Now you can access GitLab with your admin account and access all the projects under the newly created group.

Thanks for reading this, I hope this slight modification helps you guys. To read more of Musa's hints and tips visit his own blog at http://www.redmoses.me.