STUDY GUIDE · GKU 4
Application development: from analysis to deployment study guide (Information Systems)
An information system is built by people for an organisation, and most failures are failures of understanding rather than of code. This unit follows a system from idea to operation. Systems analysis and design covers the lifecycle and the process models that order it, the people and roles in a project and why projects fail, the diagrams that pin down data and processes (data flow, ER and UML), and the enterprise architecture a new system must fit into. Programming covers the foundations every application rests on: data types and operators, control structures and functions, data structures and object-oriented design, at the level of tracing code by hand. Application development then joins the two: eliciting and writing requirements that can be tested, choosing an architecture and its libraries, implementing and testing, and deploying and maintaining the system under a methodology that suits the project.
Structured by the official ETEC subject standard for this topic: every listed topic and learning outcome, with formulas, figures and worked examples. The full sections are available to members in the app.
SKU 4.1 · Systems analysis and design
The systems development lifecycle and its process models
The SDLC phases with what each produces, from planning to evaluation; the waterfall, V, incremental, iterative, spiral, prototyping and agile models; and how to pick one from the features of a project.
Teamwork, roles and why projects succeed or fail
Who takes part in systems development and what each is responsible for, how teams work and communicate (including the growth of communication channels and a RACI chart), and the common causes of project failure with the practice that prevents each.
Modelling techniques: data flow diagrams, ER models and UML
How analysts model processes (context and levelled data flow diagrams, with the rules that make them valid and balanced), data (ER diagrams and their mapping to tables) and behaviour and structure (UML use case, class, sequence and activity diagrams).
Enterprise architecture and the SDLC
Enterprise architecture as the plan a new system must fit: the business, data, application and technology domains, baseline and target architectures with gap analysis, the TOGAF ADM and the Zachman framework, and where each touches the SDLC phases.
SKU 4.2 · Programming
Data types, operators and predicate expressions
How a program stores values in memory with primitive types and their ranges, how arithmetic, assignment and conversion operators transform them (including integer division, remainder, swapping and overflow), and how relational and logical operators build the true/false tests that drive every decision.
Algorithmic problem-solving: control structures and functions
How sequence, selection and repetition express any algorithm, how to write it as pseudocode or a flowchart and trace it by hand, how to count loop passes, and how functions with parameters, return values and local scope break a program into reusable modules.
Data structures and persistent storage
Linear structures (array, linked list, stack, queue) and non-linear ones (hash table, tree, graph): what each is good at and what its operations cost, how to trace stack and queue operations, and how a program keeps its data in non-volatile storage between runs.
Object-oriented programming: classes, encapsulation, inheritance and polymorphism
How classes bundle data with the behaviour that maintains it, why encapsulation keeps an object valid, how inheritance and polymorphism let one call do the right thing for each kind of object, and when composition is the better choice.
SKU 4.3 · Application development
Requirements: eliciting, writing and agreeing them with stakeholders
How analysts find out what a system must do (interviews, workshops, observation, documents, prototypes), how to write functional and non-functional requirements and user stories that can be tested, how to prioritise them, and how to keep a transparent dialogue among stakeholders who want different things.
Software architecture, components and dependencies
How to make a system's principal components and their dependencies visible: layered and three-tier designs, MVC, client-server, monolith versus microservices, separation of concerns, coupling and cohesion; and how to identify, version and control the external libraries and services the system depends on.
Implementation and testing: from design to verified code
Turning a design into code with standards, reviews and version control; the levels of testing; black-box design of test cases (equivalence partitions, boundary values) and white-box coverage with cyclomatic complexity; unit tests and assertions, and regression testing.
Deployment, maintenance and choosing a process methodology
How software gets from a developer's machine into use safely (environments, build once and promote, CI/CD, rollout and conversion strategies), how it is maintained afterwards (corrective, adaptive, perfective, preventive), and how to adopt a process methodology that fits the people, constraints and rate of change of a project.
MORE INFORMATION SYSTEMS GUIDES
- Data and information: databases and business analytics study guideGKU 2 · 9 sections
- Foundations of information systems study guideGKU 1 · 11 sections
- Organisational ethics and IS management study guideGKU 5 · 11 sections
- Information systems technology study guideGKU 3 · 9 sections
- Information system integration: managing IS projects study guideGKU 6 · 9 sections