タグ付けされた質問 「specifications」

仕様(多くの場合、仕様と略される)は、材料、製品、またはサービスが満たす必要のある一連の明示的な要件です。

5
同じid属性を持つ2つのHTML要素:どれほど悪いのでしょうか?
Googleマップのソースコードを参照するだけです。ヘッダーには、id = "search"の2つのdivがあり、一方にはもう一方が含まれ、jstrack = "1"属性もあります。次のようにそれらを分離するフォームがあります: <div id="search" jstrack="1"> <form action="/maps" id="...rest isn't important"> ... <div id="search">... これはグーグルなので、間違いではないと思います。 それでは、このルールに違反することは本当にどれほど悪いことなのでしょうか?CSSとDOMの選択に注意している限り、クラスのようなIDを再利用してみませんか?誰かがこれを意図的に行っていますか?



3
例外の仕様が悪いのはなぜですか?
約10年以上前の学校に戻って、彼らは例外指定子の使用を教えていました。私のバックグラウンドは彼らの1人であるため、強制されない限り頑固にC ++を避けるトーバルディッシュCプログラマーなので、私は散発的にC ++になってしまい、私が教えられたので例外指定子を使用しています。 ただし、C ++プログラマの大半は、例外指定子に眉をひそめているようです。これらのようなさまざまなC ++の達人からの議論と議論を読みました。私の知る限り、それは次の3つに要約されます。 例外指定子は、残りの言語と矛盾する型システムを使用します(「シャドウ型システム」)。 例外指定子を持つ関数が、指定したもの以外の何かをスローする場合、プログラムは悪い、予期しない方法で終了します。 例外指定子は、今後のC ++標準で削除される予定です。 ここで何かが足りないのですか、それともすべての理由ですか? 私自身の意見: 1)に関して:それで何。C ++はおそらく、構文的にはこれまでに作成された中で最も一貫性のないプログラミング言語です。マクロ、goto / labels、undefined- / unspecified- / implementation-defined動作の大群(hoard?)、不十分に定義された整数型、すべての暗黙的な型昇格規則、friend、autoなどの特別な場合のキーワードがあります。 、登録、明示...など。おそらく、C / C ++のすべての奇妙さについての厚手の本をいくつか書くことができます。それでは、なぜ人々はこの特定の矛盾に反応するのでしょうか。これは、言語の他の多くのより危険な機能と比較して、小さな欠陥です。 2)に関して:それは私自身の責任ではありませんか?C ++で致命的なバグを作成できる方法は他にもたくさんありますが、なぜこの特定のケースはさらに悪いのでしょうか?throw(int)Crash_t を記述してからスローする代わりに、関数がintへのポインターを返し、ワイルドで明示的な型キャストを行い、Crash_tへのポインターを返すと主張することもできます。C / C ++の精神は、ほとんどの責任をプログラマに任せることでした。 では、利点はどうですか?最も明白なのは、関数が指定したもの以外の型を明示的にスローしようとすると、コンパイラーがエラーを出すことです。これに関しては標準が明確だと思います(?)。バグが発生するのは、関数が他の関数を呼び出し、その関数が間違った型をスローした場合のみです。 決定論的な組み込みCプログラムの世界から来た私は、関数が私に投げかけるものを正確に知ることを最も確実に好むでしょう。それをサポートする言語に何かがあれば、それを使用してみませんか?選択肢は次のようです: void func() throw(Egg_t); そして void func(); // This function throws an Egg_t 呼び出し元が2番目のケースでtry-catchを実装することを無視/忘れる可能性は大きいと思いますが、1番目のケースではそうではありません。 私が理解しているように、これら2つの形式のいずれかが突然別の種類の例外をスローすることにした場合、プログラムはクラッシュします。最初のケースでは、別の例外をスローすることが許可されていないため、2番目のケースでは、SpanishInquisition_tをスローすることを誰も期待していないため、その式は本来あるべき場所にキャッチされません。 後者の場合、プログラムの最高レベルで最後の手段としてcatch(...)を使用することは、プログラムクラッシュよりも優れているようには見えません。「ねえ、あなたのプログラムのどこかで、奇妙な未処理の例外がスローされました。 。 "。例外がスローされた場所から遠く離れると、プログラムを回復できません。できることは、プログラムを終了することだけです。 また、ユーザーの観点からは、OSから「プログラムが終了しました。アドレス0x12345のBlablabla」という悪意のあるメッセージボックス、またはプログラムから「未処理の例外:myclass」という悪意のあるメッセージボックスを受け取ったとしても、それほど気にすることはありませんでした。 …

3
Pythonの「PEP-302新しいインポートフック」の経験[非公開]
私はRuby(CRuby)の開発者の一人です。Ruby 2.0のリリースに取り組んでいます(2012年2月のリリースを予定しています)。 Pythonには「PEP302:New Import Hooks」(2003)があります: このPEPは、Pythonインポートメカニズムのより良いカスタマイズを提供するインポートフックの新しいセットを追加することを提案しています。現在のインポートフックとは異なり、新しいスタイルのフックを既存のスキームに挿入して、モジュールの検索方法とロード方法をより詳細に制御できます。 PEP302に類似した機能をRuby 2.0(CRuby 2.0)に導入することを検討しています。マッツを説得できる提案をしたい。現在、CRubyは標準的な方法でファイルシステムからのみスクリプトをロードできます。 PEP 302についての経験や考慮事項がある場合は、共有してください。 例: それは素晴らしい仕様です。変更する必要はありません。 それはほとんど良いですが、この問題があります... 2003年に戻ることができたら、仕様を...


1
仕様に欠陥がある場合、引き続き従うべきですか?
私は、雇用主のアプリケーションの1つと、クライアントが開発した外部システムとの統合を開発するように割り当てられました。セキュリティに関連するいくつかの露骨な欠陥がある統合のためのクライアントの仕様。この欠陥により、不正なユーザーがシステムにアクセスして、制限されたデータを表示できます。 設計どおりに実装された場合の欠陥とその潜在的なセキュリティリスクを指摘し、欠陥のない代替手段を提供しましたが、(要するに)クライアントから「指定どおりに行う」と言われました。 プログラマには、既知のセキュリティリスクのあるコードを実装しないという倫理的な責任がありますか?安全なアプリケーションを作成するためのソフトウェア開発者としての倫理的責任を、クライアントの要件がどの時点で上回るのでしょうか?

2
プログラマーはコンピューターの購入時にどのような仕様を求めるべきですか?または、どのコンピューターを購入する必要がありますか?[閉まっている]
プログラミング用に特別に設計された新しいコンピューターを入手したいです。 学習経験のために自分で構築したいのですが、同様に作られたものを喜んで購入します。 基本的に、プログラミング専用の非常に多くのファイルをダウンロードしたので、a)私のコンピューターは容量に近く、b)私の4歳のコンピューターは非常に遅いです。 具体的には、データベース(Oracle / PostGreSQL、Mongo、Hadoop)とjavaに興味がありますが、可能なすべての言語の学習が大好きです。

7
技術に詳しくない人が小規模プロジェクトの仕様書を書く方法を学ぶにはどうすればよいですか?
技術に詳しくない人が小規模プロジェクトの仕様を書く方法を学ぶにはどうすればよいですか? 私の友人は、統計プロジェクトの開発を外部委託しようとしています。 特に、彼はExcelで多くの作業を行っており、スクリプトの作成を外部委託して、手作業で行うことを望んでいます。 しかし、私の友人は非常に技術的ではありません。彼は技術仕様を書くのが苦手です。 彼が仕様を書くとき、それはあなたがExcelで何かをすることを記述する方法で書かれています(このセルに行き、そのセルに値をコピーします)。また、非常に冗長であり、例を何度か実行します。彼がコーナーケースを適切に説明しているかどうかはわかりません。 彼が最初に外注したプロジェクトは失敗でした。彼はいくつかの詳細を過剰に説明したが、コーナーケースを過小説明したと思う。それおよび/または彼が雇ったコーダーは、コーナーケースを熟考し、適切な質問をしませんでした。よく分かりません。私は彼とIMをしましたが、説明に5分もかからなかったはずの説明を掘り下げるのに30分かかりました。私は最後に彼のためにスクリプトを書きましたが、コーダーとの彼のプロセスが失敗した理由を調べませんでした。 彼は私に助けを求めました。しかし、彼の仕様を取り、それを明確な要件に翻訳することは、明確に書かれた仕様を実行するよりも10倍多くの作業があるため、私は関与しません。 彼が学ぶ正しい方法は何ですか?彼が使用できるリソースはありますか?コーダーとの小規模で低圧の練習プロジェクトから学ぶ方法はありますか? 彼のスクリプトのほとんどは、統計およびデータ処理指向です。たとえば、この列を取得し、平均を実行します。これらの条件下でこれらの行を削除します。そのため、課題はWebアプリの仕様とは異なります。

5
仕様書はどの文法時制で書くべきですか?
現在、機能および技術仕様を2列形式で作成しています。要約文と技術的詳細。詳細は、多くの場合、図、レイアウト設計などの付録を参照しています。 しかし、私はそれをどのように書くのに苦労しています: 過去の時制のように、作業が完了したかのように、既存の作業のハイライト拡張を示すのに苦労します。Xを行う必要があるため、将来の時制は、やることリストまたはTenseニュートラルのように聞こえます。 さらに混乱を加えるために、この仕様は、第一言語として英語を持っていない人々によって読まれるかもしれません。

9
クライアントをUIモックアップから一連の実際の要件に移動するにはどうすればよいですか?
アプリケーションの視覚状態の25の画面のモックアップが提供されたとします。これは、完成したアプリケーションとして開発し、元の利害関係者または顧客に渡すことができると確信するのに十分であり、満足することを期待しています。当然のことながら、UIを思い付くために使用された多くの質問を関係者に繰り返し求めることになりますが、これは無駄です。 しかし、これは十分ではないことが何度もあります。アプリケーションを開発する過程で、インターフェイスを複製しているために要件が曖昧になり、最終的に顧客が最初に思ったほど満足していませんUIを作成するためにすべての情報を要求したとき。 私は他に何を求めるべきか分からず、具体的になり、要件と全体的な目標の理解を求めましたが、私は何を求めるべきかわかりません。今始めたばかりの場合、UIに至るすべての情報を再ハッシュするのに多くの時間が無駄になり、この段階では、顧客が本来持っていた多くの重要な理由が失われます。 UIモックアップに基づいて要件をロックダウンできないことを人々に理解させるにはどうすればよいでしょうか? エンドユーザー向けのアプリケーション開発タスクを適切に実行するために、理想的には何から始めますか?

5
プロジェクトの開発を開始する前に何を計画しますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 クライアントからプロジェクトの仕様を受け取ったとします。そして今、プロジェクトの開発を開始します。通常、最初のモジュール(通常はユーザー登録)から始めて、あるモジュールから次のモジュールに進みます。モジュールの動作を開始する直前に頭の中で計画するだけですが、その前に計画はありません。 ただし、仕様を検討し、コーディングする前にシステムがどのように機能するか、たとえば主要なコンポーネントは何か、それらはどのように相互作用するかなどを計画しておいた方が良いと思います。私が何を計画すべきか正確にはわからない。 私が何を求めているのかをよりよく理解するには、どのようにすればよいですか- a)プロジェクトをコンポーネントに分割し、 b)相互作用を計画します。たとえば、クラス図を作成したり、単体テストを作成したりする必要がありますか? 何か案は?

1
機能仕様を迅速かつ効率的に記述する方法
だから私はここでスペックに関するジョエルの素晴らしい記事を読んだ。(2000年に書かれました!!)4つのパートすべてを読みましたが、仕様を書くための系統的なアプローチを探しています。 私は唯一の孤独な開発者で、非常に有名な金融会社のためにこのかなり複雑なアプリ(またはアプリのファミリー)に取り組んでいます。 私はこれほど深刻なことをしたことは一度もありませんでした。私は悪い仕様、ある種の概要のようなものを書き始め、それは私の時間の多くを無駄にしました。 また、クライアント用に3つのモックアップを作成したので、クライアントが何を望んでいるかをよく理解できます。また、プレビュー(最も基本的なワークフローを備えた使い捨てのアプリ)をリリースしました。私はコア/ベースシステムの一部のみを作成してテストしました。 私がこれまでに犯した間違いは、詳細な仕様を書くことではないのだと思うので、私は今それを達成しています。 したがって、全体は MVC Webサイト(管理者およびデータ表示用) 2つのSilverlightモジュール(2つの特定のタスク用) 1つのデスクトップアプリケーション 私は時間とリソースが完全に不足しており、これを迅速に行う必要があります。また、これらの人が同じように素早く、痛みを伴わずに読む必要があります。 それではどうやってやるのか、ヒントや現実の世界を探しているのですが、皆さんは通常どのようにやっていますか? すべてのダイアログ/フォーム/ページの模擬スクリーニーを作成しますか? ダミーのASP.NET Webフォームプロジェクトを作成し、フォルダーにHTMLファイルを入力して、MVC URL構造のように見せることを考えています。 次に、Webサイトの仕様にセクションを作成し、スクリーニーで取得したすべてのURLのページを作成します。 私の勝利フォームアプリケーションのために、私は、ややデモWinフォームプロジェクトで作られてきた私は考え、私と同じように、その後、実際のアプリでダイアログまたは構造のすべてに入れた後、画面はそれを撃ちましたか? この質問の背景について。私はいつも夢中になってジャンプしてコードを作成していましたが、それはうまくいきましたが、私が取り組んでいるアプリにとっては、複雑であるだけでなく、非常に評判の高い大企業のためであり、それを手に入れなければなりません正しい! (そして、それはこれまでのところ順調に進んでおり、今日私は多くの人が気に入ったプレビュー版のデモを行いました!! = D) 最初の設計を正しくすれば、この会社と素晴らしいビジネスをすることもできます。新しい「素晴らしい」機能についてはすでに多くの人が考えています。

2
Joelテストの最新性は?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 6年前に閉鎖されました。 新しいコードを作成する前に、仕様を作成し、バグを修正する必要があることをパートナーに説得したいと思います。Joelテストを参照する必要がありますか?ジョエルのテストは最新だと思いますか?仕様を持たないことは、プロジェクト管理が悪いと思う。ジョエルのテストに同意しますか?何か追加してもらえますか?インスタンスのオープンソースについては言及していません。

8
ユーザーが自分で要件をまとめて取得できるようにするか、それらを一緒にガイドしますか?
誰もがこのようなことを経験したと確信しています。プロジェクトを持っているクライアントと会議に参加します。彼らは念頭に置いて/いくつかの要件と彼らが欲しい/必要なもののあいまいな理解を持っていません。この時点で、2つのオプションがあるようです。 1)ユーザーに、「わかりました。まだ説明することさえできなければ、私はあなたのために何かを構築することはできません。あなたが望むものを知ってから数週間で一緒に戻ってみませんか」。 2)ユーザーと数回会って、良いole Socraticの方法でユーザーをガイドすることで、ユーザーが望むものを理解するのを助けます。「Xを追跡する必要がありますか?」、「Yはどうですか?」、「機能Zが必要ですか?」 最初のオプションでは、他の人の仕事をしたり、精神力を獲得したりすることはありませんが、ユーザーは一貫した仕様をあなたに決して提示しないかもしれませんし、期限が近づき続けると永遠にかかるかもしれません。2番目のオプションでは、ビジネスアナリストになるために多くの時間を浪費し、おそらく二度と使用しないビジネス知識を頭の中に詰め込む必要がありますが、次のような仕様が出てくる可能性が高くなります。理にかなっています。 私にとって、これは開発の最も困難な側面の1つであり、この感情の中で私は一人ではないと感じています。あなたの経験では、これらのオプションのどれがよりよく機能する傾向がありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.