Resource: Ian, Sommerville, Software Engineering


1. Professional software development

1.1 Software engineering

Software engineering is intended to support professional software development rather than individual programming.

It may include:

  1. a number of separate programs and configuration files
  2. system documentation: describes the structure of the system
  3. user documentation: explains how to use the system
  4. websites: for users to download recent product information

What are the fundamental software engineering activities?

  1. software specification: customers and engineers define the software that is to be produced and the constraints on its operation
  2. software development: the software is designed and programmed
  3. software validation: the software is checked to ensure that it is what the customer requires
  4. software evolution: the software is modified to reflect changing customer and market requirements

There are two kinds of software products:

generic products: These are stand-alone systems that are produced by a development organization and sold on the open market to any customer who is able to buy them.

Example: databases, word processors, drawing packages

It also includes so-called vertical applications designed for some specific purpose such as library information systems, accounting systems, or systems for maintaining dental records.

customized (or bespoke) products: These are systems that are commissioned by a particular customer. A software contractor developers the software especially for that customer.

Example: control systems for electronic devices, systems written to support a particular business process, and air traffic control systems.

1.2 Software engineering diversity

Software engineering is a systematic approach to the production of software that takes into account:

  • practical cost
  • schedule
  • dependability isssues
  • the needs of software custmoers and producers.

There are many different types of application including:

  1. stand-alone applications: These are application systems that run on a local computer, such as a PC.
  2. interactive transaction-based applications:  These are applications that execute on a remote computer and that are accessed by users from their own PCs or terminals.
  3. embedded control systems: These are software contorl systems that control and manage hardware devices.
  4. batch processing systems: These are business systems that are designed to process data in large batches.
  5. entertainment systems: These are systems that are primarily for personal use and which are intended to entertain the user.
  6. systems for modeling and simulation: These are systems that are developed by scientists and engineers to model physical processes or situations, which include many, separate, interacting objects.
  7. data collection systems: These are systems that collect data from their environment using a set of sensors and send that data to other systems for processing.
  8. systems of systems: These are systems that are composed of a number of other software systems.

1.3 Software engineering and the Web

The development of web browsers that could run small programs and do some local processing led to an evolution in business and organizational software.

The next stage in the development of web-based systems aws the notion of web services.

2. Software engineering ethics

3. Case studies

Software Engineering: 1. Introduction的更多相关文章

  1. Software Engineering: 3. Project planning

    recourse: "Software Engineering", Ian Sommerville Keywords for this chapter: planning sche ...

  2. SENG201 (Software Engineering I) Project

    SENG201 (Software Engineering I) ProjectSpace ExplorerFor project admin queries:For project help, hi ...

  3.  Go is more about software engineering than programming language research.

    https://talks.golang.org/2012/splash.article Go at Google: Language Design in the Service of Softwar ...

  4. 第二篇——The communication during software engineering.

    I've learned a lot in my software engineering class about how a program comes out.That's also a esse ...

  5. Software Engineering: 2. Project management

    resources:"Software Engineering" Ian Sommerville For most projects, important goals are: D ...

  6. 个人阅读作业2—《No Silver Bullet: Essence and Accidents of Software Engineering》读后感

    在进行了一次结对编程.一次团队编程和一次个人编程项目后,读了<No Silver Bullet: Essence and Accidents of Software Engineering> ...

  7. Software Engineering at Google

    Google的Fergus Henderson在Software Engineering at Google中介绍了Google的软件工程实践. 软件开发 源码仓库 单一源代码仓库,除了核心配置和安全 ...

  8. 【Software Test】Introduction to Software Testing

    Introduction to Software Testing 文章目录 Going to Learn --. Evolution of The Software Industry Errors, ...

  9. 10. Software, Software Engineering, water fall (瀑布模型),Code Complete等名词的来源

    ①.Software-软件”一词是20世纪60年代才出现的,软件Software——1958年由贝尔实验室的著名统计学家John Tukey 提出软件与硬件一起构成完整的计算机系统,它们是相互依存,缺 ...

随机推荐

  1. 如何把自己打造成技术圈的papi酱

    最近半年,一个叫papi酱的平胸女子连续在微博.朋友圈.创业圈刷屏,当之无愧成了中文互联网的第一大网红.呃,你以为我会巴拉巴拉说一堆网工创业的事?NO,今天想借papi酱的话题跟大家一起聊聊程序员如何 ...

  2. AngularJS Best Practices: pretty urls

    By default, AngularJS will route URLs with a hashtag. For example: http://example.com/ http://exampl ...

  3. RDIFramework.NET ━ 9.12 表字段管理 ━ Web部分

    RDIFramework.NET ━ .NET快速信息化系统开发框架 9.12  表字段管理 -Web部分  表(字段)综合管理模块主要功能是对数据表本身,表的各个字段做相应的控制,具体有以下功能: ...

  4. 微信的redirect_uri参数错误原因分析

    我们可以根据微信的开发者文档  http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html 网页授权获取用户验证这一章来 ...

  5. Pyhton 学习总结 21 :fileinput模块

    fileinput模块可以对一个或多个文件中的内容进行迭代.遍历等操作.该模块的input()函数有点类似文件readlines()方法,区别在于前者是一个迭代对象,需要用for循环迭代,后者是一次性 ...

  6. Web动画API教程1:创建基本动画

    本人转载自: Web动画API教程1:创建基本动画

  7. Oracle创建/删除表空间和用户(2014-3-10 记)

    /*创建表空间名为:DB_NAME*/ create tablespace DB_NAME datafile 'E:\oracle_data\db_name.dbf' size 100M autoex ...

  8. PLSQL Developer 不能连接 oracle 12c 64位 的解决办法 for win 64

    1.安装Oracle 12c 64位 2.安装32位的Oracle客户端( instantclient-basic-nt-12.1.0.1.0) 1) 下载instantclient-basic-nt ...

  9. NodeJS的安装

    1. 进入官网下载对应版本的nodejs(我选择的是32位的window7版本x86) 2. 默认路径可修改   3. install就可以安装在cmd中输入path查看路径(我的是E:\compan ...

  10. 如何通过iframe以post方式提交form表单

    以前用过一次这种技术,这次用居然忘了,现纪录下来,下次再用就来看看. 首先在html中需要准备好form和iframe元素代码如下: <form id="speaker_form&qu ...