On Saturday, 1 September 2018 at 08:19:49 UTC, Walter Bright
wrote:
On 8/31/2018 11:59 PM, Paulo Pinto wrote:
For example, in any CS program, are there any courses at all
about this?
Yes, we had them on my degree,
I'm curious how the courses you took compared with the articles
I wrote about it.
I will read the articles later, but as overview, we learned about:
- requirements gathering
- architecture design based on several methodologies, back then
it was Booch, ER, Coad and the newly introduced UML
- introduction to way to manage source control, rcs and cvs
- design by contract, via Eiffel
- use of abstract data types as means to achieve clean
architectures with separation of concerns
- ways to perform testing, way before unit testing was even a
thing
- we had a semester project going from requirements gathering,
design and implementation that was validated how well it achieved
those goals.
Which on my year it was the implementation of subway ticketing
system with automatic control of access doors, just the software
part. The sensors and door controls were simulated.
And the implementation of a general purpose B+ tree library,
another semester long project, whose integration tests where not
available to us.
We had one week time to make our library could link and
successfully execute all the tests that the teacher came up with
for the acceptance testing phase. We did not have access to their
source code, we just provided our lib.a.