100 likes | 249 Views
Experiences with the Design and Development Process of DDI Requirements for Future Work Ideas for Improvement. Joachim Wackerow. Experiences with the Design and Development Process of DDI. Results of substantial working groups. Only partly documented. Technical Implementation Committee.
E N D
Experiences with the Design and Development Process of DDIRequirements for Future WorkIdeas for Improvement Joachim Wackerow
Experiences with the Design and Development Process of DDI Results of substantial working groups Only partly documented Technical Implementation Committee Dependent on a small group XML Schema / Documentation Complex, hidden features, documentation not sufficient, bound to XML
Examples of Issues I • Study-independent usage of QuestionItem? • QuestionItemName is study-dependent • Identification of QuestionText • Use case: question bank • Study-independent usage of “variables” • Variable is study-dependent, only CodeScheme, CategoryScheme is study-independent • Use case: classifications like ISCO
Examples of Issues II • Relationship to other specifications • Syntax of URN in DDI 3.0 is not compliant with URN specification • Unclear, partly self-referencing documentation • Concept: Container for an individual concept included in the ConceptScheme • No sufficient solution for a core component • Missing values in 3.1
Examples of Issues III • Arbitrary home for elements, reasoning of decision not documented: • Coding • Codes, categories, relationship to universe?
Literate Programming Paradigm • Moves away from writing programs in the manner and order imposed by the computer • Enables programmers to develop programs in the order demanded by the logic and flow of their thoughts • Literate programs are written as an uninterrupted exposition of logic in an ordinary human language, in which macros are included to hide abstractions and traditional source code.
Literate Programming Tools • Two representations from a literate source file • one suitable for further compilation or execution by a computer, the "tangled" code • another for viewing as formatted documentation, which is said to be "woven" from the literate source
Use Case DrivenDevelopment / Documentation • Documentation • Description of use cases • Derived requirements • Purpose of component • Reasoning of chosen solution • Relationship to existing components / standards • Formalization • Model / UML • Specification • Documentation • Examples • Business view • Technical view, code fragments Current status
Requirements • Conceptual model should be derived from • Use cases • Related requirements • Core parts of conceptual model should be robust • across versions • across systems / syntax bindings ( XML - hierarchical / DBMS - relational / RDF - graph) • Different views of conceptual model • UML, ontology? • Textual description • Transparency: documentation on multiple levels • Simplicity: “simple is beautiful” paradigm for model, documentation on multiple levels • Maintenance over time should be less independent of individuals