Scott H
2012-01-11 08:44:36 UTC
Is this how it works, or can it be looked at this way:
Can I, as someone who wants a software program written in pure OOP, describe what I want to a developer, who in turn can create a requirements document?
Can that requirements document be turned into a UML document that contains how to build the classes that will make up the program? (fields, methods, relationships, etc...)
Can those UML files be turned over to other (and often unrelated) developers to create the actual/individual class files?
Once I have those, if built to the UML spec and unit tested to be bug free, can I put them together and have a working program?
The reason I ask, is that I am a novice programmer who has dealt with procedural languages and am looking to get into OOP. I want to understand why and how OOP software is (properly) built. I understand that each class file is in itself like a little program that instantiates objects that interact with other instantiated objects.
I want to test the idea that I could have random people build class files described from UML docs (and tested to be bug free according to their specification) and have them all work together? This is to test if the compartmentalization/encapsulation of a bunch of unique objects can work together.
So, theoretically, I could turn over my software “idea” to a developer who could create a requirements doc that would be further broken down to a UML doc that contains what classes to build, how to build them (fields/methods/relationships, etc...,), how they interact with each other. Once I had that – and it consisted of say 5 unique class files, and I wanted it written in Java, I could enlist 5 competent java developers (who may not know each other) and have them each write a single class file (along with the unit test code for a bug free class file) – put those class files together in the same directory and I would have a working program?
Is this the way it is done?
Thanks!