Ourusoff N.
Год: 2003
Количество страниц: 132
Язык: Английский
Формат: PDF / RAR
Формат файла: RAR
This text evolved from a long-standing interest in Jackson methodology that began when I learned, as a programmer-analyst at the World Health Organization, to use JSP to specify programs that were subsequently coded by other programmers. Later, I practiced JSP as a programmer involved in validating population census data for Senegal and Giuine-Bisau. I first taught JSP as part of a course in program design (1979), and later gave a full course in JSP (1986). I taught elementary JSD as part of courses in systems analysis (1985), in management information systems (1988-89), and in introductory computing (1991). During the Fall of 1991 while a visiting lecturer at Petrozavodsk State University (Russia), I prepared a set of lectures on JSP and JSD in a course on programming systems that I team-taught with Dr. Anatoly V. Voronin of the Department of Applied Mathematics and Cybernetics. I gave a workshop in Jackson methodology at the ACM SIGCSE Technical Symposium in March, 1992.
JSP is teachable. Many programmers have expressed their experience that JSP gave them insights about program design that they never had before—for the first time, they understood how to design programs that they had been writing without really understanding them. JSP can and should be taught in any computer information systems (CIS) curriculum as part of the first and second courses in programming. JSP is language-independent, and can be taught in any introductory programming course. JSD should be taught after JSP, as a first course in information systems design or software engineering.
Л data model can be derived from a JSD specification. Data is associated with actions (events) of an entity process; the data constitutes the state vector of the entity process. Although data models, such as the relational model, can be taught independently of systems development- database design is properly understood, not as a starling point for modeling an information system, but rather as part of the implementation phase of system development.
In the Spring of 1991 I explored object-oriented design with some students. I had the intuition that JSD entities and actions were closely related to object-oriented objects and methods, and I used this seminar to implement a JSD specification in Smalltalk.
JSD is an object-based method of analysis. A JSD specification can be seamlessly implemented using an object-oriented programming language: entities, actions, and attributes of a JSD specification map into objects, methods and instance variables of an OOP language. I have termed the method of implementing a JSD specification using an OOP language "JSDOOP".