|
IDCS - Elective Unit - DEE001 - Structured Programming Methods |
|
|
Introduction The
purpose of Structured Programming Methods is to give students a thorough
grounding in the key concepts, techniques and methods to have emerged over
time as programming has evolved into a process with increasingly formalised
approaches. This
elective focuses on the development of transferable ideas and skills and is
not language specific. The
skills and understanding developed in Structured Programming Methods should be
sufficiently broad for students to be able to adapt to different software
production situations with confidence and minimal adjustment to their
understanding of the process. General
Objectives Upon
successful completion of this module candidates will be able to demonstrate a
satisfactory performance in the
following topic areas: A. History of Programming Languages. Place
in context developments in programming languages and reasons for their evolution. B. Variables, Control Structures and Calculations. Recognise and apply appropriate
ways to control and manipulate data.
C.
Analysis
of Data and Problems. Break
down and formulate data into structures appropriate for the problem to be
addressed. D.
Further Programming Techniques. Recognise and use a range of common programming concepts as building blocks in the creation of structured programs. E.
Modelling Objects Select and apply a range of techniques to modelling systems as objects and define code requirements from the models. F. Testing. Define and apply a range of testing approaches to check the correctness of programming code. G.
Alternative Methods. Identify
and explain other, evolving ways of designing and building programs. H.
Process Integration. Put programming activities into the context of software development as a whole with emphasis on the importance of documentation. Specific
Objectives Objective
A: History of Programming
Languages A1.Describe the advantages and disadvantages of each generation of
language. A2.Understand the reasons for their development. A3.Explain the differences between each generation of language. A4.Describe the basic concepts of object-oriented technology. A5.Explain how object oriented programming differs from structured
programming. Objective
B: Variables,
Control Structures and Calculations B1.Understand the importance of the order of precedence. B2.
Describe control
structures. B3.Use calculations to construct computer programs. B4.Describe the different variable types and naming conventions. Objective
C: Analysis
of Data and Problems C1.Understand the software development process. C2.Ability to create structure diagrams for structured programs. C3.Achieve an understanding of the object oriented environment. C4.Explain variable types. C5.Organise information. C6.Analyse problems. Objective
D: Further
programming techniques D1.Describe how procedures, functions and subroutines form the building
blocks . D2.Differentiate between local and global variables. D3.Use procedure parameters. Objective
E: Modelling
Objects E1.Understand why the Unified Modeling Langauage
(UML) was developed. E2.Explain what is possible and what is not with
UML. E3.Design a simple system using some examples of UML notation. E4.Describe how these notations fit together to make a system. E5.Explain how these notations can form part of the system documentation. Objective
F: Testing F1.Explain the need for thorough testing once a program is coded. F2.
State, with examples, how unit, integration,
system, acceptance, use case diagrams and
installation testing differ. F3.List the five components of a test description. F4.Describe the methods of debugging. F5.Write a test plan for a program and produce suitable test data. F6.Desk check a program and dry run the corresponding code. F7.Appreciate the problems and techniques of program maintenance. F8.Use diagnostic aids generated during compilation. Objective
G: Alternative
Methods G1.Describe alternative methods for designing software. G2.Understand how object oriented languages aid programming. G3.Describe the use of database management
systems and the database query language. G4.Use an application program generator. G5.Describe the Client/Server solution. Objective H: Process Integration H1.Explain why standards in development
methodology and documentation lead to maintainable
systems. H2.Be able to describe the systems cycle. H3.Describe the software development lifecycle. H4.Understand requirements analysis. H5.Understand system analysis. H6.Understand the need for documentation and coding standards. H7.State the attributes of good documentation. H8.Understand and be able to use the various tools and techniques used to document a program. H9.Achieve an awareness of the programmers’ role in software development. |