2.10 Project Development

The days when programmers could just list a system’s functions and then code them are gone, if they ever existed. Today, design involves not only many specialties but also their interaction.

A large system development project could involve up to eight specialist groups, with distinct requirements, analysis and testing (Table 2.4). Note that Chapter 3 explains legitimacy analysis.

Smaller projects might break down into four groups:

  • Actions: Functionality and usability.
  • Interactions: Security and extendibility.
  • Adapting: Reliability and flexibility
  • Interchanges: Connectivity and privacy

Even smaller projects might only have two teams, one for opportunities and one for risks, while obviously a one-person project will have just one goal, of performance.

Design tensions can be reduced by agile methods where specialists talk more to each other and stakeholders, but advanced system development also needs innovators who can cut across specialist boundaries to resolve design tensions. This requires people who are trained in more than one discipline.

Requirement

Code

Analysis

Testing

Functionality

Application

Task

Business

Usability

Interface

Usability

User

Security

Access control

Threat

Penetration

Extendibility

Plug-ins

Standards

Compatibility

Reliability

Error recovery

Stress

Load

Flexibility

Preferences

Contingency

Situation

Connectivity

Network

Channel

Communication

Privacy

Rights

Legitimacy

Community

Table 2.4: A breakdown of project analysis and testing

Next