🐢

Chapter 10: Software Development & Project Management

Hi!! I'm Bluey πŸ’™ and I’m helping you study Chapter 10!

The big idea: software projects are not just technical projects. They are business projects with an IT component, and success depends on requirements, communication, tradeoffs, testing, leadership, and smart project choices.

Key Vocabulary

Make, Buy, or Rent Decision: Deciding whether to build software yourself, purchase packaged software, or rent it through SaaS/cloud.
β†’ Managers should evaluate this over the life of the project, not just at one moment.

Requirements: What the system must do for the business and its users.
β†’ Clear requirements are the single most important factor in project success.

Triple Constraint: The tradeoff among scope, schedule, and resources.
β†’ If one changes, the others usually must change too.

Brook's Law: Adding more people to a late project can make it later.
β†’ More people can create diseconomies of scale and communication problems.

IDE (Integrated Development Environment): A tool used to write software with features like an editor, debugger, and compiler.
β†’ Used by professional programmers.

Compilation: Converting code into a form a microprocessor can execute.
β†’ Compiled languages often run faster.

Interpreted / Scripting Language: A language executed inside another application or runtime environment.
β†’ Easier to write, but usually slower and more limited in scope.

Waterfall: A linear development method that plans requirements up front and follows a sequence.
β†’ Helpful for structure, but often too rigid for software projects.

Agile: An iterative development approach with smaller releases, frequent feedback, and constant improvement.
β†’ Better for changing requirements and faster delivery.

Scrum: A popular Agile method using short work cycles called sprints.
β†’ Encourages cross-functional teamwork and regular communication.

Prototype / Wireframe: A mock-up of part of a system used to test ideas and clarify requirements.
β†’ Helps users and developers communicate before too much code is written.

Low Code / No Code (LCNC): Highly visual tools that let users build apps with little or no coding.
β†’ Fast for simple apps, but can create governance, security, and maintenance risks.

Total Cost of Ownership (TCO): All costs of a system over time, including development, deployment, support, training, security, backup, compliance, and recovery.
β†’ The purchase price is only part of the real cost.

Real Examples

HealthCare.gov Failure:
The site launched with bugs, poor performance, weak authority, and no strong measurement system. This shows how bad leadership, weak requirements, and poor coordination can wreck a major rollout.
HealthCare.gov Rescue:
Once clear leadership, stand-up meetings, priorities, coordination, and experienced technologists were added, the site improved quickly. This shows that management and process can rescue a failing system.
Agile vs. Waterfall:
Waterfall tries to define everything at the start, while Agile works in repeated cycles of plan, design, develop, test, deploy, and review.
Prototypes and Wireframes:
A simple mock-up can reveal that users want something different than what developers thought they wanted. This reduces misunderstanding early.
AI and Programming:
LLMs can help generate code, SQL, HTML, Excel commands, and basic Python, but they still make mistakes. Managers still need enough code knowledge to judge quality and risk.
Low Code / No Code:
Citizen developers can build apps faster, but firms can run into duplicate data, compliance issues, weak maintenance, or security problems if governance is weak.

Challenging Practice Questions

1.

A company is behind schedule on a new internal system. Senior leaders suggest adding ten more developers immediately so the team can catch up before launch. The project manager warns that this could actually make the project later.

Which concept BEST explains the project manager’s concern?

A. Network effects
B. Brook's Law
C. Switching costs
D. Platform independence

Correct answer: B

Explanation: Brook's Law says that adding more people to a late software project can make it later because coordination and communication costs rise. A is wrong because network effects concern product value as more users join. C is wrong because switching costs concern changing systems. D is unrelated to project staffing.


2.

A firm is choosing software for a process that gives it a major competitive advantage over rivals. A vendor offers a cheaper outsourced solution, but the firm worries that giving the process away would weaken what makes it special.

What is the BEST decision principle here?

A. Outsource because vendors are always cheaper
B. Build or keep it in-house if it supports competitive advantage
C. Rent it because cloud solutions always scale better
D. Use low-code tools because speed matters most

Correct answer: B

Explanation: If a process creates vital, differentiating competitive advantage, it is usually a poor candidate for outsourcing. A and C are too absolute and ignore strategy. D focuses only on speed and ignores the strategic importance of the process.


3.

A student team shows users a clickable mock-up of a new advising app before coding the full system. During the demo, users realize several important features are missing and some screens are confusing.

Why is this mock-up MOST valuable?

A. It proves the full system is almost finished
B. It eliminates the need for testing later
C. It helps users clarify requirements before too much development occurs
D. It guarantees the project will stay on budget

Correct answer: C

Explanation: Prototypes and wireframes help users evaluate requirements, give feedback, and communicate with developers early. A is wrong because a prototype may only be a rough mock-up. B is wrong because later testing is still necessary. D is wrong because prototypes help reduce risk, but they do not guarantee budget success.


4.

A company chooses Waterfall for a project where executives keep changing what they want every few weeks. The project soon falls behind, and the team keeps reworking completed documents and plans.

Which explanation BEST fits why this method is struggling?

A. Waterfall works best when requirements are unstable and changing rapidly
B. Waterfall is too rigid when requirements are hard to know fully in advance
C. Waterfall fails because compiled languages are slower than interpreted languages
D. Waterfall cannot be used when a firm has executive support

Correct answer: B

Explanation: Waterfall depends on surfacing requirements early and following a plan, so it struggles when requirements keep changing. A states the opposite of the real weakness. C confuses development methodology with programming language performance. D is unsupported and false.


5.

A marketing analyst uses an AI tool to generate code for a dashboard. The code looks polished, but it contains a hidden logic error that produces the wrong numbers. The analyst does not notice and shares the dashboard with senior leaders.

What is the MOST important managerial lesson from this scenario?

A. AI means programming knowledge is no longer necessary
B. Low-code and AI tools remove the need for testing and review
C. Managers and knowledge workers still need enough coding knowledge to evaluate logic and catch bad output
D. Interpreted languages are always safer than compiled languages

Correct answer: C

Explanation: Chapter 10 stresses that AI can generate useful code, but bad code can be hard to detect, so users still need enough knowledge to evaluate output and risk. A and B are exactly the dangerous misconception. D is unrelated to the lesson in the scenario.

Citations

Information Systems: A Manager's Guide to Harnessing Technology – John Gallaugher

University of Texas MIS 301 Slides – Chapter 10 Software Project Management