Communication
Please start early and submit informed questions, if you like to get help.
Assignment
- Study provided experience with technology modeling. (Such as lectures on 1 and 8 July)
- Pick a non-trivial software technology. (See below for inspiration.)
- Develop a technology model of your chosen technology.
- Describe your technology model in a structured manner:
- What are the key entities?
- Importantly, what sort of technology-specific insights do you try to model?
- What are the important relationships between the key entities?
- Do you need new entity (sub-) types?
- Do you need new relationship types?
- Use sound notation (such as the one from the lectures)!
- Link your technology model in a systematic manner:
- Link each and every new entity type to a Wikipedia page or alike.
- If possible, link all your artifacts to online available example of technology usage.
The "solution" to the assignment is a report ("document") with the description and the links as characterized above.
Software technology options
For reasons explained later, you must not choose Ruby On Rails.
Please contact ed.znelbok-inu|gnaltfos#ed.znelbok-inu|gnaltfos with your ideas.
Object/relational mapping.
You could be covering an Object/relational mapping technology. See http://en.wikipedia.org/wiki/Category:Object-relational_mapping for a list of technologies. You are not allowed to choose Hibernate / JPA, as the lecture may cover those to some extent. In fact, you find a significant enough aspect for Hibernate / JPA that is missing in the existing treatment, then please go ahead.
XML data binding
You could be covering an XML data binding technology. See http://www.rpbourret.com/xml/XMLDataBinding.htm for a list of technologies. You are not allowed to choose JAXB (Java) and xsd.exe / System.Xml serialization (.NET), as there are existing technology models (in some form).
Web Application Frameworks
Anything goes, except Ruby on Rails and Django. See http://en.wikipedia.org/wiki/Category:Web_application_frameworks for a list of technologies.
Really anything goes
- Content Management Systems
- Version Control Systems
- MDE technology
- Model transformation technologies
- Hosting platforms
- Linked Data technologies
- NoSQL database management systems
- Smartphone platforms
- …
Any other categories of technologies that you would like to consider? Please, get in touch.