香港城市大学:PROGRAMMING METHODOLOGY AND SOFTWARE ENGINEERING

EE31331 PROGRAMMING METHODOLOGY AND SOFTWARE ENGINEERING PROGRAMMINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu EE 31331 PROGRAMMING METHODOLOGY AND SOFTWARE ENGINEERING

INTRODUCTION WHY PROGRAMMING METHODOLOGY. WHAT IS THE PURPOSE OF STUDYING PROGRAMMING METHODOLOG Y. PROGRAMMINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu INTRODUCTION WHY PROGRAMMING METHODOLOGY? WHAT IS THE PURPOSE OF STUDYING PROGRAMMING METHODOLOGY?

INTRODUCTION PROGRAMMING IS AN ARTP OR SOME SYSTEMATIC WAY FOR PROGRAMMING What is programming? Programming is the translation process/ transformation of a concept/algorithm/ conceptual operation/ human understandable idea into machine realization/operable code The objective is to have an effective, correct machine operable code to carry out the underlining process(the intended operations) MAJOR CONCERN: EFFICIENCY AND CORRECTNESS PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu ol Hone Kone
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu INTRODUCTION PROGRAMMING IS AN ART? OR SOME SYSTEMATIC WAY FOR PROGRAMMING? What is programming? Programming is the translation process/ transformation of a concept/ algorithm/ conceptual operation/ human understandable idea into machine realization/operable code. The objective is to have an effective, correct machine operable code to carry out the underlining process (the intended operations). MAJOR CONCERN: EFFICIENCY AND CORRECTNESS

INTRODUCTION Objective of the course is to develop a programming methodology that will enable us to write small and medium-sized programs that are computational effective and correctly implementing the target operations a methodology is a collection of methods which works together Here, in programming methodology, we try to teach a careful and systematic approach to programming PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu ol Hone Kone
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu INTRODUCTION Objective of the course is to develop a programming methodology that will enable us to write small and medium-sized programs that are computational effective and correctly implementing the target operations. A methodology is a collection of methods which works together. Here, in programming methodology, we try to teach a careful and systematic approach to programming

PROGRAMMING APPROACH Code Debug Test Plan Code Debug Test There are two programming approaches The length of the boxes is the passage of time The first approach does not have the planning phase may lead to extensive debugging Debugging- not only the syntax, the code, but the correctness of the system/operations being implemented PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu PROGRAMMING APPROACH There are two programming approaches. The length of the boxes is the passage of time. The first approach does not have the planning phase may lead to extensive debugging. Debugging- not only the syntax, the code, but the correctness of the system/operations being implemented

PROGRAMMING APPROACH Implementation of a fir filter Response i=1 A general program for any order finite impulse response or fixed order Round off errors WHAT IT NEEDS - PLANNING and AN EFFEctiVe WAY OF MULTIPLICATION PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu PROGRAMMING APPROACH Implementation of a FIR filter i n i i sponse a x = = 1 Re A general program for any order finite impulse response or fixed order….. Round off errors.. WHAT IT NEEDS - PLANNING and AN EFFECTIVE WAY OF MULTIPLICATION

PHASE OF A SOFTWARE PROJECT The basic software project development phases are Specify, Design, Code, Test, Maintain Specify -answer the question "what is the problem to be solved? The specification must be precise and complete For example the fir problem. what is the allowable round off error(precision), integer or floating point multiplication the range of input data and coefficients, How big is it allowed to be? Might it be negative? Is it more important to be fast or to be accurate?( depending on application) Specify may be called Analysis Phase PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu PHASE OF A SOFTWARE PROJECT The basic software project development phases are: Specify, Design, Code, Test, Maintain Specify - answer the question “what is the problem to be solved?” The specification must be precise and complete. For example, the FIR problem, what is the allowable round off error (precision), integer or floating point multiplication, the range of input data and coefficients, How big is it allowed to be? Might it be negative? Is it more important to be fast or to be accurate? (depending on application) Specify may be called ‘Analysis Phase’

PHASE OF A SOFTWARE PROJECT Design-answer the question"how should the problem be solved? Design includes finding the suitable abstractions and decomposition of the problem into manageable components For Fir problem, how to implement the multiplication, fast accurate? based on the specification from the first phase How many modules? reading data, coefficient multiplication, report data..error handling, checking the validation of input data PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu ol Hone Kone
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu PHASE OF A SOFTWARE PROJECT Design- answer the question “how should the problem be solved?”. Design includes finding the suitable abstractions, and decomposition of the problem into manageable components. For FIR problem, how to implement the multiplication, fast, accurate? based on the specification from the first phase. How many modules? reading data, coefficient, multiplication, report data….. error handling, checking the validation of input data…

PHASE OF A SOFTWARE PROJECT Code-the transformation process of the underlying algorithm into machine readable code based on the specification. The basic problem of it is the coding style It should be simple and easy to maintain example refer to sq0. c, sq2.c Test-ensure that the program meets the specification. Not the syntax correctness but the correctness of the implementation of the underlying algorithm/operations. It should have a test plan for such task Maintain -adapt the program to change of requirements or environment PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu ol Hone Kone
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu PHASE OF A SOFTWARE PROJECT Code - the transformation process of the underlying algorithm into machine readable code based on the specification. The basic problem of it is the coding style. It should be simple and easy to maintain. example refer to sq0.c, sq2.c Test - ensure that the program meets the specification. Not the syntax correctness but the correctness of the implementation of the underlying algorithm/operations. It should have a test plan for such task. Maintain - adapt the program to change of requirements or environment

MEANS OF DEVELOPMENT ALGORITHM-It is the underlying process to be implemented as the machine operable instruction(codes) In order to translate/transform the human understandable concepts, the targeted process/operation is represented as algorithm. The means to represent the algorithm should be a language. In fact, before we can develop program, we need a notation in which to express the development PROGRAM MINGMETHDOLODGY AND SOFTWAREENGINEERING 港城市大 Copyrighto1998 Angus Wu
PROGRAMMING METHDOLODGY AND SOFTWARE ENGINEERING Copyright©1998 Angus Wu MEANS OF DEVELOPMENT ALGORITHM- It is the underlying process to be implemented as the machine operable instruction (codes). In order to translate/transform the human understandable concepts, the targeted process/operation is represented as algorithm. The means to represent the algorithm should be a language. In fact, before we can develop program, we need a notation in which to express the development
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《计算机网络》课程教学资源(PPT课件讲稿)第8章 应用层.ppt
- 并行处理(PPT讲稿)Parallel Processing - Hypercubes and Their Algorithms.ppt
- 《计算机网络》课程电子教案(PPT课件讲稿)第2章 数据通信的基础知识.ppt
- 《Excel高级应用》课程教学资源:课程教学大纲.doc
- 新乡学院:《办公自动化》课程教学资源(教学大纲).pdf
- 《视频制作》课程教学资源:课程教学大纲.doc
- 上海师范大学:《R语言与统计分析》课程教学资源(PPT课件)R语言——介绍(主讲:汤银才).ppt
- 南京大学:移动Agent系统支撑(PPT讲稿)Agent Mobility Software Agent(主讲:余萍).pptx
- 赣南师范大学:《计算机网络原理》课程教学资源(PPT课件讲稿)第四章 数据链路层.ppt
- 上海交通大学:《Multicore Architecture and Parallel Computing》课程教学资源(PPT课件讲稿)Lecture 8 CUDA, cont’d.ppt
- 东南大学:《操作系统概念 Operating System Concepts》课程教学资源(PPT课件讲稿)06 Process synchronization.ppt
- 河南中医药大学:《数据库原理》课程教学资源(PPT课件讲稿)第一章 绪论.ppt
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第4章 存储层次结构设计.ppt
- 西安交通大学:《网络与信息安全》课程PPT教学课件(网络入侵与防范)第一章 网络安全概述(主讲:沈超、刘烃).ppt
- 《管理信息系统》课程教学资源(PPT课件讲稿)第16章 新型数据库技术及发展.ppt
- 北京大学:《软件需求工程》课程教学资源(PPT课件讲稿)第三章 软件需求获取(主讲:周立新).ppt
- 电子工业出版社:《计算机网络》课程教学资源(第六版,PPT课件讲稿)第三章 数据链路层.pptx
- 山东大学:《微机原理及单片机接口技术》课程教学资源(PPT课件讲稿)第四章 指令系统及汇编语言程序设计(4.1-4.6).ppt
- 西北农林科技大学:高性能计算之并行编程技术(讲座PPT,报告人:周兆永).ppt
- 《计算机操作系统》课程教学资源(PPT课件讲稿)第8章 计算机系统的测试.ppt
- 《计算机操作系统》课程教学资源(PPT课件讲稿)第二章 进程描述与控制 Process Concept & Process Control.ppt
- 佛山科学技术学院:《网络技术基础》课程教学资源(专业技能考试大纲).doc
- 四川大学:《数据结构》课程教学资源(PPT课件讲稿)第五章 树和二叉树 Tree & Binary Tree.ppt
- 2019年《计算机网络》考试大纲.doc
- 计算机算法(PPT讲稿)禁忌搜索算法 Tabu Search.ppt
- 北京航空航天大学:《数据挖掘——概念和技术(Data Mining - Concepts and Techniques)》课程教学资源(PPT课件讲稿)Chapter 05 Mining Frequent Patterns, Association and Correlations.ppt
- 电子科技大学:《计算机操作系统》课程教学资源(PPT课件讲稿)第二章 进程与调度(Processes and Scheduling).ppt
- 交互式数据语言(PPT讲稿)Basic IDL knowledge.ppt
- 江苏海洋大学(淮海工学院):《Java面向对象程序设计》课程教学资源(PPT课件讲稿)全国二级Java考试的重点难点.pptx
- 长春工业大学:《Javascript 程序设计》课程教学资源(PPT课件讲稿)第8章 网页特效 JavaScript.ppt
- 《计算机组成原理》课程教学资源(PPT课件讲稿)第三章 CPU子系统.ppt
- 南京大学:移动Agent系统支撑(PPT讲稿)Mobile Agent Communication——Software Agent.pptx
- PROGRAMMING METHODOLOGY AND SOFTWARE ENGINEERING.ppt
- 《SQL Server 2000数据库教程》教学资源(PPT课件讲稿)第11章 数据库安全性管理.ppt
- 白城师范学院:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第五章 数据库完整性.pptx
- 香港城市大学:《计算机图形学》课程教学资源(PPT课件讲稿)图的算法 Graph Algorithms.ppt
- 《The C++ Programming Language》课程教学资源(PPT课件讲稿)Lecture 07 Exception Handling.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第9章 用户自己建立数据类型.pptx
- 《计算机网络教程》课程PPT教学课件(第三版)第3章 网络体系结构与网络协议.ppt
- 西安交通大学:《物联网技术导论》课程教学资源(PPT课件)第一章 物联网技术概论(主讲:桂小林).ppt