We developed our app for iOS and Android in native code. Before using scrum we had the following development logic:
We define the overall product requirements (for iOS and Android app)
The iOS developer gets some aspects of the implementation and starts defining the data structures, classes, algos and starts implementation.
Meanwhile the Android developer might do the same with other aspects of the implementation that can clearly be separated from the above. This way both can work independently and very efficiently.
Once the iOS developer is finished with their chunk the Android developer translates this to Java (and vice versa) - as much as possible line by line.
This way we have produced good quality code quite efficiently for both iOS and Android. The translation task is not only extremely fast it also serves as a kind of quality assurance check for the code.
And of course the code is very easy to be meaintained since it is basically the same for iOS and Android
Now we are starting to use scrum. I understand the Product owner defines the product requirements.
- Does that also mean that they define all the software aspects, like data structures, classes, algos?
- Does scrum even support such development where iOS and Android code is identical as much as possible ?
- Or is scrum only usable if the iOS and Android developer each do their own thing with minimal coordination on code level?
We are thinking about one common development platform - but for now I would appreciate very much your insights into the scrum methodology and how to handle this situation.