1. Trang chủ
  2. » Thể loại khác

Chương trình SW - Chuan CNTT Nhat Ban SW3

620 77 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 620
Dung lượng 3,83 MB

Nội dung

METI Ministry of Economy, Trade and Industry Textbook for Software Design & Development Engineers N O SYST EM DEV ELOPM EN T, OPERAT I ON S AN D M AI N T EN AN CE Second Edition REVISED AND UPDATED BY Japan Information Processing Development Corporation Japan Information-Technology Engineers Examination Center • Microsoft, MS-DOS, Microsoft Windows, Microsoft Windows NT, Project 2002, Visio 2002 and Visual SourceSafe are registered trademarks of Microsoft Corporation of the United States in the United States and other countries • The product names appearing in this textbook are trademarks or registered trademarks of • “PMI” and the PMI logo are service and trademarks registered in the United States and the respective manufacturers other nations; “PMP” and the PMP logo are certification marks registered in the United States and other nations; “PMBOK”, is a trademarks registered in the United States and other nations • Capability Maturity Model, Capability Maturity Modeling, and CMM are registered in the U.S Patent and Trademark Office Textbook for Software Design & Development Engineers No SYSTEM DEVELOPMENT AND OPERATIONS First edition first printed October 1, 2001 Second edition first printed August 1, 2002 Japan Information Processing Development Corporation Japan Information-Technology Engineers Examination Center TIME 24 Building 19th Floor, 2-45 Aomi, Koto-ku, Tokyo 135-8073 JAPAN ©Japan Information Processing Development Corporation/Japan Information-Technology Engineers Examination Center 2001,2002 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE Table of Contents Part Software Engineering Overview of Software Engineering 1.1 Origin of Software Engineering 1.1.1 Software Crisis 1.2 Definition of Software Engineering 1.2.1 Software production 1.2.2 Industrializing the management process 1.3 Achievements in Software Engineering 1.3.1 Methodology 1.3.2 Techniques in Software Engineering 1.3.3 Logic-oriented paradigm 1.3.4 Function-oriented paradigm 1.3.5 Object-oriented paradigm 1.3.6 Agent-oriented paradigm Exercises 1-2 1-2 1-4 1-4 1-4 1-5 1-5 1-6 1-8 1-8 1-8 1-8 1-9 Process Models and Cost Models for Software Development 2.1 Process Models for Software Development 2.1.1 Waterfall model 2.1.2 Spiral model 2.1.3 Prototyping model 2.2 Cost Models for Software Development 2.2.1 Halstead model 2.2.2 FP (Function Point) model 2.2.3 COCOMO (COnstructive COst Model) model Exercises 1-11 1-11 1-12 1-13 1-15 1-15 1-16 1-17 1-19 Defining Software Requirements 3.1 Software Requirements 3.1.1 Purpose of systematization 3.1.2 Configuration 3.1.3 Function 1-21 1-21 1-21 1-22 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE 3.1.4 Performance 3.1.5 Constrains 3.2 Software Requirements Analysis 3.2.1 KJ (Jiro Kawakita) method 3.2.2 Functional analysis 3.2.3 Event response analysis 3.2.4 Structured analysis 3.3 Software Requirement Models 3.3.1 Functional hierarchical model 3.3.2 Dataflow model 3.3.3 Control flow model 3.3.4 Finite-state machine model 3.3.5 Petri-net model 3.3.6 Data-oriented model 3.3.7 Object-oriented model 3.3.8 Parallel process model 3.4 Techniques for defining Software Requirements 3.4.1 Structured analysis method 3.4.2 Object-oriented analysis method Exercises 1-22 1-22 1-23 1-23 1-24 1-24 1-25 1-26 1-26 1-27 1-28 1-29 1-29 1-29 1-30 1-31 1-32 1-32 1-34 1-37 Software Design 4.1 Concepts of Software Design 4.1.1 Concepts of partitioning and integration 4.1.2 Concept of stepwise refinement 4.1.3 Concept of abstraction 4.1.4 Concept of information hiding 4.2 Software Design Methods 4.2.1 Structured design method 4.2.2 Jackson method 4.2.3 Warnier method 4.2.4 Object-oriented design method Exercises 1-44 1-44 1-45 1-46 1-49 1-50 1-50 1-53 1-55 1-56 1-58 Programming 5.1 Procedural Programming Paradigm 5.1.1 Structured programming 5.1.2 Structured charts 1-63 1-64 1-71 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE 5.2 Logical Programming Paradigm 5.2.1 Prolog (Programming in Logic) 5.2.2 Unification 5.2.3 Backtracking 5.3 Functional Programming Paradigm 5.3.1 Lisp (LIST Processor) 5.4 Object-oriented Programming Paradigm 5.4.1 Smalltalk 5.4.2 C++ 5.4.3 Java 5.4.4 Instantiation of classes 5.4.5 Class hierarchy and inheritance 5.4.6 Encapsulation as data abstraction 5.4.7 Message passing and polymorphism Exercises 1-75 1-75 1-76 1-77 1-78 1-78 1-79 1-79 1-79 1-81 1-82 1-83 1-84 1-84 1-86 Software Quality 6.1 Software Quality Factors 6.1.1 Usability 6.1.2 Maintainability 6.1.3 Portability 6.1.4 Reliability 6.1.5 Efficiency 6.1.6 Updatability 6.1.7 Ease of testing 6.1.8 Operability 6.2 Program Testing 6.2.1 Technique for designing test cases 6.2.2 Technique for testing module integration 6.2.3 Static tests and dynamic tests 6.3 Quality Control of Software 6.3.1 Review method 6.3.2 Reliability estimation method 6.3.3 QC method Exercises 1-92 1-93 1-94 1-95 1-97 1-98 1-99 1-99 1-99 1-100 1-100 1-106 1-108 1-109 1-109 1-111 1-112 1-113 Software Development Environment 7.1 Software Development Tools 1-120 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE 7.1.1 Common functions 7.1.2 Design process tools 7.1.3 Development process tools 7.1.4 Test process tools 7.1.5 Maintenance process tools 7.2 CASE 7.2.1 upper-CASE 7.2.2 lower-CASE 7.2.3 component-CASE 7.2.4 integrated-CASE 7.2.5 Repository 7.2.6 Forward engineering 7.2.7Reverse engineering 7.2.8 Re-engineering Exercises 1-120 1-123 1-125 1-126 1-126 1-128 1-129 1-129 1-129 1-130 1-130 1-130 1-131 1-131 1-133 Trends in Software Engineering 8.1 Software Tools 8.1.1 Component-orientation 8.1.2 JavaBeans 8.1.3 UML 8.1.4 COTS Exercises 1-137 1-137 1-141 1-144 1-145 1-146 Answers for Part 1Exercises 1-147 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE Part External Design External Design Procedures 1.1 Preparations for External Design Work 1.1.1 Policies for system development 1.1.2 Systematization requirements definition 1.2 External Design Procedures 1.2.1 Designing the system functions 1.2.2 Designing the data model 1.2.3 Producing the external design 1.2.4 Design review 2-2 2-2 2-3 2-5 2-5 2-5 2-6 2-6 System Function Design 2.1 Selecting a System Architecture 2.1.1 Hardware configuration 2.1.2 Software configuration 2.1.3 Application packages 2.1.4 Scope of systematization 2.1.5 Candidate architecture 2.2 Subsystem Functional Specifications and Interface Design 2.2.1 Subsystem division 2.2.2 Defining subsystem functional specifications 2.2.3 Subsystem interface definition 2.3 Designing Security 2.3.1 Security policy 2.3.2 Security requirements 2.3.3 Security implementation method 2.4 Job Model Design 2.4.1 Details of job flow 2.4.2 Data flow refinement Exercises 2-8 2-9 2-9 2-9 2-10 2-11 2-14 2-14 2-16 2-17 2-19 2-19 2-20 2-21 2-24 2-24 2-28 2-30 Data Model Design 3.1 Conceptual Models 3.1.1 ER model 3.2 Logical Data Model 3.2.1 Hierarchical model 2-35 2-35 2-42 2-42 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE 3.2.2 Network model 3.2.3 Relational model Exercises 2-43 2-44 2-45 Preparation of External Design Documents 4.1 Preparation of User Manual(Outline) 2-49 4.1.1 Participants 2-49 4.1.2 Review method 2-49 4.1.3 Format of user manual 2-49 4.2 Design of System Test Specifications 2-50 4.2.1 Policy planning for system testing 2-50 4.2.2 System test environment 2-53 4.2.3 Documentation procedure 2-53 4.3 External Design Documents 2-55 4.3.1 System Configuration Diagram 2-55 4.3.2 Subsystem Relationship Diagram 2-55 4.3.3 System Job Flow 2-56 4.3.4 System Function of Specifications 2-56 4.3.5 Input-output Specifications (screen and report specification) 2-57 4.3.6 Data Specification 2-57 4.4 Design Review 2-58 4.4.1 Review system 2-58 4.4.2 Organization 2-60 Exercises 2-64 Answers for Part Exercises 2-68 SW No.3 SYSTEM DEVELOPMENT, OPERATIONS AND MAINTENANCE Part Internal Design Procedure for Internal Design 1.1 Internal Design Procedure 1.1.1 Software component design 1.1.2 Input/output design 1.1.3 Physical data design 1.1.4 Creation and reuse of parts 1.1.5 Preparation of internal design documents 1.1.6 Design review 3-2 3-3 3-4 3-4 3-5 3-6 3-6 Software Component Design 2.1 Software Structure Design 2.1.1 Partitioning into components 2.1.2 Determining functional specifications 2.1.3 Interfaces between components 2.2 Use of Middleware and Tools Exercise 3-8 3-10 3-22 3-26 3-27 3-29 Input/Output Design 3.1 Report design 3.2 GUI design 3.2.1 Screen design 3.2.2 Input and output check system and message design 3-36 3-49 3-49 3-59 Physical Data Design 4.1 File Design 4.1.1 Analysis of data characteristics 4.1.2 Determination of the logical data organization 4.1.3 Selection of data storage media 4.1.4 Record layout design 4.2 Physical data design 4.2.1 Mapping of the logical data structure 4.2.2 Capacity calculation 4.2.3 Performance improvement and optimization 3-78 3-79 3-81 3-84 3-85 3-91 3-91 3-97 3-99 ... Structured analysis method 3.4.2 Object-oriented analysis method Exercises 1-2 2 1-2 2 1-2 3 1-2 3 1-2 4 1-2 4 1-2 5 1-2 6 1-2 6 1-2 7 1-2 8 1-2 9 1-2 9 1-2 9 1-3 0 1-3 1 1-3 2 1-3 2 1-3 4 1-3 7 Software Design 4.1 Concepts... Exercises 1-9 2 1-9 3 1-9 4 1-9 5 1-9 7 1-9 8 1-9 9 1-9 9 1-9 9 1-1 00 1-1 00 1-1 06 1-1 08 1-1 09 1-1 09 1-1 11 1-1 12 1-1 13 Software Development Environment 7.1 Software Development Tools 1-1 20 SW No.3 SYSTEM... 2-8 2-9 2-9 2-9 2-1 0 2-1 1 2-1 4 2-1 4 2-1 6 2-1 7 2-1 9 2-1 9 2-2 0 2-2 1 2-2 4 2-2 4 2-2 8 2-3 0 Data Model Design 3.1 Conceptual Models 3.1.1 ER model 3.2 Logical Data Model 3.2.1 Hierarchical model 2-3 5

Ngày đăng: 11/12/2017, 17:33

TỪ KHÓA LIÊN QUAN