Jackson system development
From Wikipedia, the free encyclopedia
Jackson system development (JSD) is a linear software development methodology developed by Michael A. Jackson and John Cameron in the 1980s.
Contents [hide]
1 History
2 Principles of operation
3 JSD steps
3.1 Modeling stage
3.2 Network stage
3.3 Implementation stage
3.4 Designing the diagrams
4 See also
5 References
6 Further reading
7 External links
History[edit]
JSD was first presented by Michael A. Jackson in 1982, in a paper called "A System Development Method".[1] and in 1983 in System Development.[2] Jackson System Development (JSD) is a method of system development that covers the software life cycle either directly or, by providing a framework into which more specialized techniques can fit. Jackson System Development can start from the stage in a project when there is only a general statement of requirements. However, many projects that have used Jackson System Development actually started slightly later in the life cycle, doing the first steps largely from existing documents rather than directly with the users. The later steps of JSD produce the code of the final system. Jackson’s first method, Jackson Structured Programming (JSP), is used to produce the final code. The output of the earlier steps of JSD are a set of program design problems, the design of which is the subject matter of JSP. Maintenance is also addressed by reworking whichever of the earlier steps are appropriate.
JSD continued to evolve, and a few new features were introduced into the method. These are described in a 1989 collection of papers by John Cameron, JSP and JSD,[3] and in the 1992 version (version 2) of the LBMS JSD manual.[4]
Development of the JSD method came to an end in the early 1990s as Jackson's thinking evolved into the Problem Frames Approach with the publication of Software Requirements and Specifications (1995) and Problem Frames: Analyzing and Structuring Software Development Problems (2000).
Principles of operation[edit]
Three basic principles of operation of JSD is that:
Development must start with describing and modelling the real world, rather than specifying or structuring the function performed by the system. A system made using JSD method performs the simulation of the real world before any direct attention is paid to function or purpose of the system.
An adequate model of a time-ordered world must itself be time-ordered. Main aim is to map progress in the real world on progress in the system that models it.
The way of implementing the system is based on transformation of specification into efficient set of processes. These processes should be designed in such a manner that it would be possible to run them on available software and hardware.
JSD steps[edit]
When it was originally presented by Jackson in 1982,[5] the method consisted of six steps:
Entity/action step
Initial model step
Interactive function step
Information function step
System timing step
System implementation step
Later, some steps were combined to create a method with only three steps.[6]
Modelling stage (analysis): with the entity/action step and entity structures step.
Network stage (design): with the initial model step, function step, and system timing step.
Implementation stage (realisation): the implementation step.
Modeling stage[edit]
In the modeling stage the designer creates a collection of entity structure diagrams and identifies the entities in the system, the actions they perform, the time-ordering of the actions in the life of the entities, and the attributes of the actions and entities. Entity structure diagrams use the diagramming notation of Jackson Structured Programming structure diagrams. Purpose of these diagrams is to create a full description of the aspects of the system and the organisation. Developers have to decide which things are important and which are not. Good communication between developers and users of the new system is very important.
This stage is the combination of the former entity/action step and the entity structures step.
Network stage[edit]
In the network stage a model of the system as a whole is developed and represented as a system specification diagram (SSD) (also known as a network diagram). Network diagrams show processes (rectangles) and how they communicate with each other, either via state vector connections (diamonds) or via datastream connections (circles). In this stage is the functionality of the system defined. Each entity becomes a process or program in the network diagram. External programs are later added to the network diagrams. The purpose of these programs is to process input, calculate output and to keep the entity processes up-to-date. The whole system is described with these network diagrams and are completed with descriptions about the data and connections between the processes and programs.
The initial model step specifies a simulation of the real world. The function step adds to this simulation the further executable operations and processes needed to produce output of the system. System timing step provides synchronisation among processes, introduces constraints. This stage is the combination of the former ‘Initial model’ step, the ‘function’ step and the ‘system timing’ step.
Implementation stage[edit]
In the implementation stage the abstract network model of the solution is converted into a physical system, represented as a system implementation diagram (SID). The SID shows the system as a scheduler process that calls modules that implement the processes. Datastreams are represented as calls to inverted processes. Database symbols represent collections of entity state-vectors, and there are special symbols for file buffers (which must be implemented when processes are scheduled to run at different time intervals).
The central concern of implementation step is optimization of the system. It is necessary to reduce the number of processes because it is impossible to provide each process that is contained in specification with its own virtual processor. By means of transformation, processes are combined in order to limits their number to the number of processors.
Designing the diagrams[edit]
Entity structure diagram (ESD)
The diagram shows how the action entities cooperate with the system. Entity structure diagram (ESD) notations:
Entity: An entity is an object that is used on the system and by the system.
Action: The actions that are carried out by entities and the actions that affect other entities.
Construct-sequence: The JSD construct is identical to the SSADM Entity Life History construct. Use a SequenceConstruct to illustrate actions that are applied from left to right.
Construct-selection: To reflect a choice between two or more actions. Mark the options in the topright corner with a "o" (option).
Construct-recurrence: When an action repeats, place a small asterisk (*) in the topright corner.
Normally there would be only one action underneath a RecurringConstruct.
Null component: A Null component can make sure nothing happens in an IF-ELSE statement.
Network diagram (ND)
Network diagrams show the interaction between the processes. Sometimes they are referred to as system specification diagrams (SSD's). Network diagram (ND) notations:
Process: Processes represent system functions. A process model represents the primary system functions. It generally has a relation with an outside entity through the datastream.
Datastream connection: In a datastream connection, process A (the entity that writes the datastream) actively sends information to another process B.
State vector inspection: In a state vector connection, process B (the entity that reads the state vector information) reads the state vector information of another entity A.
The difference between a state vector connection and a data stream connection lies in which process is active. In a datastream connection, the process with the information, A, is the active process; it actively sends a message to the datastream reader B at a time that it (A, the sender) chooses. In a state vector inspection, the process with the information, A, is passive; it does nothing but let the reader process B inspect its (A's) state vector. B, the process doing the inspection, is the active process; it decides when it will read information from A. Roughly speaking, datastream connection is an abstraction of message passing, while state vector inspection is an abstraction for polling (and for database retrieval).
See also[edit]
Jackson Structured Programming
Michael A. Jackson
Problem Frames Approach
References[edit]
Jump up ^ "A System development method" by M. A. Jackson, published in Tools and notions for program construction: An advanced course, Cambridge University Press, 1982
Jump up ^ System Development, M. A. Jackson, Prentice Hall, 1983
Jump up ^ JSP and JSD: The Jackson Approach to Software Development, ed. John R. Cameron (IEEE Computer Society Press, ISBN 0-8186-8858-0, 1989)
Jump up ^ LBMS Jackson system development, Version 2.0 Method manual by LBMS (Learmonth, Burchett Management Systems), John Wiley & Sons, ISBN 0-471-93565-4; 1992
Jump up ^ "A System development method" by M. A. Jackson, published in Tools and notions for program construction: An advanced course, Cambridge University Press, 1982
Jump up ^ Decision systems Inc. (2002), Jackson System Development. Accessed 24 Nov 2008.
Further reading[edit]
John R. Cameron (1989).The Jackson Approach to Software Development, IEEE Computer Society Press, Silver Spring.
Jackson Software Development Methods web page
Michael A. Jackson (1982). A systems development method
Michael A. Jackson (1983). System development, Prentice Hall, Englewood Cliffs, New Jersey, 1983. (In het Nederlands gepubliceerd in 1989 bij Academec Service onder de titel: Systeemontwikkeling volgens JSD.)
SmartDraw (2005). How to draw Jackson System Development (JSD) Diagrams)
External links[edit]
Jackson Developmen
พัฒนาระบบ Jacksonจากวิกิพีเดีย สารานุกรมฟรีพัฒนาระบบ Jackson (JSD) เป็นวิธีการพัฒนาซอฟต์แวร์เชิงพัฒนา โดย Michael A. Jackson และจอห์น Cameron ในทศวรรษ 1980เนื้อหา [ซ่อน] ประวัติศาสตร์ 12 หลักการJSD 3 ขั้นตอน3.1 ขั้นตอนการสร้างแบบจำลอง3.2 เวทีเครือข่าย3.3 ขั้นดำเนินการ3.4 การออกแบบไดอะแกรม4 ดูอ้างอิง 56 อ่านเพิ่มเติมเชื่อมโยงภายนอก 7[แก้ไข] ประวัติศาสตร์JSD แรกถูกเสนอ โดย Michael A. Jackson ใน 1982 ในกระดาษที่เรียกว่า "วิธีการพัฒนาระบบ A" [1] และ ในปี 1983 ในการพัฒนาระบบการ [2] พัฒนาระบบ Jackson (JSD) เป็นวิธีการพัฒนาระบบที่ครอบคลุมวงจรชีวิตของซอฟต์แวร์โดยตรง หรือ โดยให้กรอบที่สามารถใส่เทคนิคพิเศษเพิ่มเติม พัฒนาระบบ Jackson สามารถเริ่มต้นจากขั้นตอนในโครงการเมื่อมีเฉพาะคำสั่งทั่วไปความต้องการ อย่างไรก็ตาม หลาย ๆ โครงการที่ใช้พัฒนาระบบ Jackson จริงเริ่มต้นเล็กน้อยในวงจรชีวิต ทำขั้นตอนแรก จากเอกสารที่มีอยู่ส่วนใหญ่ไม่ ใช่โดยตรง กับผู้ใช้ ขั้นตอนต่อไปของ JSD ผลิตรหัสระบบขั้นสุดท้าย วิธีแรกของ Jackson, Jackson เขียนโปรแกรมแบบมีโครงสร้าง (สาทร), ใช้ในการผลิตรหัสสุดท้าย ผลลัพธ์ของขั้นตอนก่อนหน้าของ JSD มีชุดของปัญหาออกแบบโปรแกรม การออกแบบซึ่งเป็นเรื่องของสาทร นอกจากนี้ยังมีส่งบำรุงรักษา โดย reworking แล้วในขั้นตอนก่อนหน้านี้เหมาะสมJSD ยังคงพัฒนา และคุณลักษณะใหม่บางอย่างถูกนำเข้าสู่วิธีการ เหล่านี้ได้อธิบายไว้ในเอกสารชุด 1989 โดยจอห์น Cameron สาทร และ JSD, [3] และ ในรุ่น 1992 (รุ่น 2) คู่มือ LBMS JSD [4]พัฒนาวิธี JSD มาสิ้นสุดในช่วงปี 1990 เป็นของ Jackson คิดพัฒนาเป็นวิธีการกรอบปัญหากับพิมพ์ เฟรมปัญหาความ ต้องการซอฟต์แวร์ และข้อมูลจำเพาะ (1995): วิเคราะห์ และจัดโครงสร้างการพัฒนาปัญหาซอฟต์แวร์ (2000)หลักการของการดำเนินงาน [แก้ไข]3 หลักการพื้นฐานของการดำเนินงานของ JSD คือ:การพัฒนาต้องเริ่มต้น ด้วยการอธิบาย และสร้างแบบจำลองโลกจริง แทนที่ระบุ หรือจัดโครงสร้างการทำงานดำเนินการตามระบบ ระบบทำได้โดยใช้วิธี JSD ทำการจำลองโลกจริงก่อนจ่ายความสนใจใด ๆ โดยตรงกับฟังก์ชันหรือวัตถุประสงค์ของระบบแบบจำลองเพียงพอของโลกเวลาสั่งเองต้องสั่งเวลา จุดมุ่งหมายหลักคือ แผนความก้าวหน้าในโลกจริงในความก้าวหน้าในระบบที่โมเดลนั้นวิธีการของการใช้ระบบจะขึ้นอยู่กับการเปลี่ยนแปลงของข้อมูลจำเพาะเกี่ยวกับชุดมีประสิทธิภาพของกระบวนการ ควรออกแบบกระบวนการเหล่านี้เช่นอย่างที่คุณจะสามารถเรียกใช้ซอฟต์แวร์และฮาร์ดแวร์ตอน JSD [แก้ไข]เมื่อมันถูกนำเสนอ โดย Jackson ใน 1982, [5] วิธีการประกอบด้วยหกขั้นตอนแรก:เอนทิตี/การดำเนินการขั้นตอนขั้นตอนแบบจำลองเริ่มต้นฟังก์ชันแบบขั้นตอนขั้นตอนรายละเอียดฟังก์ชันขั้นตอนที่ระบบกำหนดเวลาขั้นตอนการใช้งานระบบภายหลัง ได้รวมขั้นตอนบางอย่างเพื่อสร้างวิธีการที่ มีเพียงสามขั้นตอน [6]แบบจำลองขั้น (วิเคราะห์): เอนทิตี/การดำเนินการขั้นตอนและขั้นตอนโครงสร้างเอนทิตีเครือข่ายระยะ (ออกแบบ): ขั้นตอนแบบจำลองเริ่มต้น ฟังก์ชันขั้นตอน และระบบขั้นตอนระยะเวลาการขั้นดำเนินการ (ปัญหา): ขั้นตอนการดำเนินการ[แก้ไข] ขั้นตอนการสร้างโมเดลในขั้นตอนการสร้างโมเดล แบบสร้างคอลเลกชันของเอนทิตีโครงสร้างไดอะแกรม และระบุเอนทิตีในระบบ การดำเนินการที่จะทำ เวลาลำดับของการกระทำในชีวิตของเอนทิตี และแอตทริบิวต์ของการดำเนินการเอนทิตี เอนทิตีโครงสร้างไดอะแกรมใช้สัญลักษณ์ไดอะแกรมไดอะแกรมโครงสร้างการเขียนโปรแกรมแบบมีโครงสร้างของ Jackson วัตถุประสงค์ของไดอะแกรมเหล่านี้คือการ สร้างคำอธิบายทั้งในด้านของระบบและองค์กร นักพัฒนาต้องตัดสินใจว่า สิ่งใดเป็นสำคัญและไม่ใช่ สื่อสารที่ดีระหว่างนักพัฒนาและผู้ใช้ระบบใหม่เป็นสิ่งสำคัญมากขั้นนี้เป็นขั้นตอนดำเนินอดีตเอนทิตีและขั้นตอนโครงสร้างเอนทิตีเวทีเครือข่าย [แก้ไข]ในเครือข่ายเวทีแบบจำลองระบบเป็นทั้งพัฒนา และแสดงไดอะแกรมระบบข้อมูลจำเพาะ (SSD) (หรือที่เรียกว่าไดอะแกรมเครือข่าย) ไดอะแกรมเครือข่ายแสดงกระบวน (สี่เหลี่ยม) และวิธีที่แต่ละเครื่อง ผ่านสถานะการเชื่อมต่อแบบเวกเตอร์ (เพชร) หรือ ผ่านการเชื่อมต่อ datastream (วงกลม) ในขั้นนี้เป็นการทำงานของระบบที่กำหนด แต่ละเอนทิตี้กลายเป็น กระบวนการหรือโปรแกรมในไดอะแกรมเครือข่าย ภายหลังมีเพิ่มโปรแกรมภายนอกเพื่อไดอะแกรมเครือข่าย วัตถุประสงค์ของโปรแกรมเหล่านี้คือ กระบวนการป้อนข้อมูล คำนวณผลผลิต และ เพื่อให้กระบวนการเอนทิตีปัจจุบัน ทั้งระบบอธิบาย ด้วยไดอะแกรมเครือข่ายเหล่านี้ และจะเสร็จสมบูรณ์พร้อม ด้วยคำอธิบายเกี่ยวกับข้อมูลและการเชื่อมต่อระหว่างกระบวนการและโปรแกรมขั้นตอนแบบจำลองเริ่มต้นระบุการจำลองโลกจริง ขั้นตอนการฟังก์ชันเพิ่มการจำลองนี้ต่อปฏิบัติการดำเนินงานและกระบวนการของระบบ ขั้นตอนที่ระบบกำหนดเวลาให้ synchronisation ระหว่างกระบวนการ แนะนำข้อจำกัด ขั้นนี้เป็นขั้นตอน 'ต้นแบบ' อดีต ขั้นตอน 'ฟังก์ชั่น' และ 'ระบบเวลา' ขั้นตอนขั้นตอนการดำเนินงาน [แก้ไข]ในการดำเนินการ ขั้นรูปแบบเครือข่ายนามธรรมของโซลูชันจะถูกแปลงเป็นระบบทางกายภาพ แสดงเป็นระบบใช้งานไดอะแกรม (SID) SID แสดงระบบเป็นกระบวนการจัดกำหนดการที่เรียกโมดูลที่ใช้กระบวนการ Datastreams จะแสดงเป็นการเรียกกลับของกระบวนการ คอลเลกชันของเอนทิตีรัฐเวกเตอร์แสดงสัญลักษณ์ฐานข้อมูล และมีสัญลักษณ์พิเศษสำหรับบัฟเฟอร์แฟ้ม (ซึ่งต้องดำเนินการเมื่อกระบวนจัดกำหนดการให้รันในช่วงเวลาที่แตกต่างกัน)กังวลใจกลางของขั้นตอนการดำเนินงานเพิ่มประสิทธิภาพของระบบได้ จำเป็นต้องลดจำนวนกระบวนการเนื่องจากเป็นไปไม่ได้ให้แต่ละกระบวนการที่มีอยู่ในข้อมูลจำเพาะกับตัวประมวลผลเสมือนตนเอง โดยการเปลี่ยนแปลง กระบวนจะรวมในสั่งจำกัดหมายเลขหมายเลขของตัวประมวลผลออกแบบไดอะแกรม [แก้ไข]ไดอะแกรมโครงสร้างเอนทิตี (ESD)แผนภาพแสดงวิธีการดำเนินการเอนทิตีร่วมกับระบบ เอนทิตีโครงสร้างไดอะแกรม (ESD) ฯลฯ:เอนทิตี: เอนทิตีเป็นวัตถุที่ใช้ ในระบบ และระบบการดำเนินการ: การดำเนินการที่จะดำเนินการ โดยการตีและการกระทำที่มีผลต่อการตีลำดับโครงสร้าง: โครงสร้าง JSD จะเหมือนกับโครงสร้างของ SSADM เอนทิตีประวัติชีวิต ใช้ SequenceConstruct เป็นการแสดงให้เห็นถึงการดำเนินการที่ใช้จากซ้ายไปขวาเลือกสร้าง: ถึงทางเลือกระหว่างการดำเนินการที่สอง หรือมากกว่านั้น ทำเครื่องหมายเลือกในมุม "o" (เลือก) toprightConstruct-recurrence: When an action repeats, place a small asterisk (*) in the topright corner.Normally there would be only one action underneath a RecurringConstruct.Null component: A Null component can make sure nothing happens in an IF-ELSE statement.Network diagram (ND)Network diagrams show the interaction between the processes. Sometimes they are referred to as system specification diagrams (SSD's). Network diagram (ND) notations:Process: Processes represent system functions. A process model represents the primary system functions. It generally has a relation with an outside entity through the datastream.Datastream connection: In a datastream connection, process A (the entity that writes the datastream) actively sends information to another process B.State vector inspection: In a state vector connection, process B (the entity that reads the state vector information) reads the state vector information of another entity A.The difference between a state vector connection and a data stream connection lies in which process is active. In a datastream connection, the process with the information, A, is the active process; it actively sends a message to the datastream reader B at a time that it (A, the sender) chooses. In a state vector inspection, the process with the information, A, is passive; it does nothing but let the reader process B inspect its (A's) state vector. B, the process doing the inspection, is the active process; it decides when it will read information from A. Roughly speaking, datastream connection is an abstraction of message passing, while state vector inspection is an abstraction for polling (and for database retrieval).See also[edit]Jackson Structured ProgrammingMichael A. JacksonProblem Frames ApproachReferences[edit]Jump up ^ "A System development method" by M. A. Jackson, published in Tools and notions for program construction: An advanced course, Cambridge University Press, 1982Jump up ^ System Development, M. A. Jackson, Prentice Hall, 1983Jump up ^ JSP and JSD: The Jackson Approach to Software Development, ed. John R. Cameron (IEEE Computer Society Press, ISBN 0-8186-8858-0, 1989)Jump up ^ LBMS Jackson system development, Version 2.0 Method manual by LBMS (Learmonth, Burchett Management Systems), John Wiley & Sons, ISBN 0-471-93565-4; 1992Jump up ^ "A System development method" by M. A. Jackson, published in Tools and notions for program construction: An advanced course, Cambridge University Press, 1982กระโดดขึ้น ^ ตัดสินใจระบบ Inc. (2002), พัฒนาระบบ Jackson เข้าถึง 24 2551 พฤศจิกายน[แก้ไข] อ่านเพิ่มเติมจอห์นอาร์ Cameron (1989) วิธี Jackson เพื่อพัฒนาซอฟแวร์ IEEE คอมพิวเตอร์สังคมกด ซิลเวอร์สปริงวิธี Jackson ซอฟต์แวร์พัฒนาเว็บเพจMichael A. Jackson (1982) วิธีการพัฒนาระบบMichael A. Jackson (1983) ระบบการพัฒนา Prentice Hall, Englewood หน้าผา นิ วเจอร์ซีย์ 1983 (ใน gepubliceerd Nederlands กรุณาใน 1989 bij titel เด onder บริการ Academec: Systeemontwikkeling volgens JSD)SmartDraw (2005) วิธีการวาดไดอะแกรมพัฒนาระบบ Jackson (JSD))[แก้ไข] ลิงก์Jackson Developmen
การแปล กรุณารอสักครู่..
