Skip to main content

Table of Contents

  1. University of London International ProgrammesProgramme Specification and Regulations for Economics, Management, Finance and the Social Sciences (Old Regulations)
  2. Important information regarding the Programme Specification and Regulations
  3. Programme Specification
  4. Detailed Regulations
  5. Annex A: Structures - Degrees
  6. Annex A: Structures - Diplomas for Graduates
  7. Annex A: Structures - Diploma in Economics and Diploma in Social Sciences
  8. Annex A: Structures - Selection Groups
  9. Annex B - Syllabuses for Economics, Management, Finance and the Social Sciences
    1. AC1025 Principles of accounting
    2. AC3059 Financial management
    3. AC3091 Financial reporting
    4. AC3093 Auditing and assurance
    5. AC3097 Management accounting
    6. AC3143 Valuation and securities analysis
    7. DV1171 Introduction to international development
    8. DV2135 World development
    9. DV2169 Economic policy analysis in international development
    10. DV3044 Economics of development
    11. DV3162 Complex emergencies and humanitarian responses
    12. DV3165 Development management
    13. DV3166 Global environmental problems and politics
    14. EC1002 Introduction to economics
    15. EC2020 Elements of econometrics
    16. EC2065 Macroeconomics
    17. EC2066 Microeconomics
    18. EC2096 Economic history in the 20th century
    19. EC3015 Economics of labour
    20. EC3016 International economics
    21. EC3022 Public economics
    22. EC3099 Industrial economics
    23. EC3115 Monetary economics
    24. EC3120 Mathematical economics
    25. FN1024 Principles of banking and finance
    26. FN2029 Financial intermediation
    27. FN3023 Investment management
    28. FN3092 Corporate finance
    29. FN3142 Quantitative finance
    30. GY1009 Human geography
    31. GY1147 Physical geography: fundamentals of the physical environment
    32. GY1148 Methods of geographical analysis (half course)
    33. GY2109 Geographies of development
    34. GY2149 Biogeography
    35. GY2150 Geomorphological processes
    36. GY2151 Environmental change
    37. GY2152 Hydrology
    38. GY2164 Economic geography
    39. GY3068 Society and the environment
    40. GY3153 Space and culture
    41. GY3154 Geomorphological applications
    42. GY3155 Biodiversity
    43. GY3156 Tropical land management
    44. GY3157 Independent geographical study
    45. IR1011 Introduction to international relations
    46. IR1034 World history since 1917
    47. IR2084 Nationalism and international relations
    48. IR2085 International institutions
    49. IR2137 Foreign policy analysis
    50. IR3026 International political economy
    51. IR3083 International political theory
    52. IR3090 International politics of East Asia
    53. IR3140 Security and international relations
    54. IS1060 Introduction to information systems
    55. IS1129 Introduction to programming (half course)
    56. IS1168 Introduction to computer systems architecture and programming
    57. IS2062 Information systems development and management
    58. IS2136 Information systems and organisations
    59. IS2138 Information and communication technologies: principles and perspectives
    60. IS3139 Software engineering: theory and application
    61. IS3159 Research project in information systems
    62. IS3167 Management and Innovation of e-business
    63. MN1107 Introduction to business and management
    64. MN2079 Elements of social and applied psychology
    65. MN3027 The law of business organisations
    66. MN3028 Managerial economics
    67. MN3032 Management science methods
    68. MN3077 Management: international and comparative perspectives
    69. MN3119 Strategy
    70. MN3127 Organisation theory: an interdisciplinary approach
    71. MN3141 Principles of marketing
    72. MT105A Mathematics 1 (half course)
    73. MT105B Mathematics 2 (half course)
    74. MT1173 Algebra
    75. MT1174 Calculus
    76. MT2076 Management mathematics
    77. MT2116 Abstract mathematics
    78. MT2117 Advanced calculus (half course)
    79. MT2118 Advanced linear algebra (half course)
    80. MT3040 Game theory (half course)
    81. MT3041 Advanced mathematical analysis (half course)
    82. MT3042 Optimisation theory (half course)
    83. MT3043 Mathematics of finance and valuation (half course)
    84. MT3095 Further mathematics for economists
    85. MT3170 Discrete mathematics and algebra
    86. PS1114 Democratic politics and the State
    87. PS1130 Introduction to modern political thought
    88. PS2082 Comparative politics
    89. PS3086 Democracy and democratisation
    90. PS3088 Politics and policies of the European Union
    91. PS3105 Contemporary political theory: liberalism and its critics
    92. PS3108 Political analysis and public choice
    93. SC1021 Principles of sociology
    94. SC1158 Reading social science (half course)
    95. SC2145 Social research methods
    96. SC2163 Sociological theory and analysis
    97. SC3055 Sociology of development
    98. SC3057 Social policy
    99. SC3144 Historical sociology
    100. SC3160 Population and society
    101. ST104A Statistics 1 (half course)
    102. ST104B Statistics 2 (half course)
    103. ST3133 Advanced statistics: distribution theory (half course)
    104. ST3134 Advanced statistics: statistical inference (half course)
  10. Annex B - Laws syllabuses
  11. Annex C: Credits and accreditation of prior learning
  12. Annex C: Table of Automatic Accreditation of Prior Learning 2011-12
  13. Annex D: Scheme of award
  14. Annex E: Assessment Criteria
  15. Glossary of terms
  16. Related documents and other sources of information
  17. Corrections

IS3139 Software engineering: theory and application

Notes

Students taking this course are required to submit coursework.

Prerequisites (applies to degree students only)

IS2062 Information systems development and management and IS3103 Elements of information and communication technologies or IS2138 Information and communication technologies: principles and perspectives.

Syllabus

This syllabus covers the methods, attitudes and values which underlie professional contemporary software systems development. The emphasis is on how to undertake formal software development through requirements specification, design and implementation, but within a broader understanding of software engineering practices.

Section 1: Software Engineering Process

The changing pressures on software engineering practices: History of the field, definition of software, the software crisis.

The Process for Developing Software and its importance

The Capability Maturity Model

The traditional software engineering process: The lifecycle model, evolutionary software development, incremental software development, spiral model. Prototyping

Rapid software development

Internet speed web based application development

End-user development.

Agile methods

Extreme programming

Refactoring

Section 2: The Practices of software engineering:

Introduction to structured vs. object oriented paradigms

Acquiring requirements

Specifying requirements and design (both structured and object oriented)

  1. Structured approaches: ER design, data flow, diagrams, data dictionary
  2. OO approach (using UML): use-case diagrams, Class diagrams, Object sequence diagrams, State-chart diagrams

Features of good design

Coding and configuration management

Implementation and testing (both structured and object oriented)

  1. Choice of programming languages and techniques
  2. Test planning
  3. White-box and black-box testing
  4. Testing automation
  5. Implementation

Maintenance and software evolution

  1. Systems re-engineering for Legacy systems
  2. Reuse
  3. Reasons for reuse
  4. Concept reuse - patterns, configurable systems products and program generators
  5. Component-based software engineering

Computer Aided Software Engineering (CASE) Tools

Documentation and Help Systems

Project Management in software engineering

Documentation and help systems.

Managing Software Engineering Projects

Coursework and examination

The examination will be three hours and consist of seven questions of which students must answer four. This will contribute 60% to the overall mark.

Students will undertake a project for the remaining 40% of marks. This will require them to review a software engineering approach or technique, apply this to a real problem and finally reflect on the experience. The project will require them to write a short essay describing the approach they are intending to apply and its relevance to the problem chosen. They will then present an account of how the approach was applied in practice. This should include the relevant documentary material required for the chosen approach (e.g. if the Rational Unified Process is chosen UML diagrams and various documents should be included). Finally they will need to complete a two page pro forma in which they will reflect on the practice of developing the system from the approach chosen. This should include lessons learnt and critical reflections on the process. A bibliography must also be provided demonstrating reading beyond the core textbooks.

Students are not required to produce programming code, but rather are assessed on their attempt to apply software engineering techniques and principles in practice. The focus is not on the produced system but on the quality of the process undertaken, the coherence of the documents presented and how successful the documents would be in developing a software system. Clearly however, for some students programming will be an integral part of this exercise.

Correction 25th July 2011

IS3139: Software engineering: theory and application: amendment has been made to the relative weighting of the coursework and the examination. The original text in the syllabus for IS3139 Software engineering: theory and application stated that the examination will contribute 40% to the overall mark and that the coursework will contribute 60%. The correct percentages towards the overall mark are 60% for the examination and 40% for the coursework, and the syllabus has been amended accordingly.