Fundamentals of Software Project Management

A software house has been asked to develop a simple web system based on a three-tier architecture (and a client-server architecture) for mobile banking. The system allows bank account holders to:
1. Check the current account balance
2. Show the list of the last five transactions
3. Pay into another bank account up to £500 per day if funds are available
The SW project manager has decided that each of the above requirements would correspond to a specific software component that represents a partition of the three-tier architecture into various modules, each with its own GUI, its own portion of business logic, and its own set of SQL queries to the external bank database. The project manager would like to use an Agile approach and thus needs to estimate the ‘size’ of each such component.

a)Consider the above web-based system specification. Discuss a rough size estimation approach expressed as integer points, assigning to the simplest requirement (and to the corresponding component) a unit point and expressing the other requirements (and components) as integer multiples of the simplest one.

b)Consider the above web-based system specification. Discuss how to schedule development in terms of the envisaged software architectural patterns (i.e., in terms of the development sequence of system layers).

Consider a computerised burglar alarm equipped with a range of sensors that detect out-ofnormal environment conditions. For instance, movement detectors are used by this system to check whether an intruder is in a house. Once some suspicious movement is identified, the computer raises an alarm. Discuss the most suitable architectural pattern(s) upon which the design of the above system should be based.